
1.1. 第一步:获取appid
appid是第三方应用集成讯飞开放平台SDK的身份标识,SDK静态库和appid是绑定的,每款应用必须保持唯一,否则会出现10407错误码。appid在开放平台申请应用时可以获得,下载SDK后可从SDK中sample文件夹的Demo工程里找到(例如: /sample/MSCDemo/MSCDemo/Definition.h 的APPID_VALUE)
1.2. 第二步:工程配置
1.2.1. 添加库
将开发工具包中lib目录下的iflyMSC.framework添加到工程中。同时请将Demo中依赖的其他库也添加到工程中。 按下图示例添加 SDK 所需要的 iOS系统库:

| 库名称 | 添加范围 | 功能 |
|---|---|---|
| iflyMSC.framework | 必要 | 讯飞开放平台静态库。 |
| libz.tbd | 必要 | 用于压缩、加密算法。 |
| AVFoundation.framework | 必要 | 用于系统录音和播放 。 |
| SystemConfiguration.framework | 系统库 | 用于系统设置。 |
| Foundation.framework | 必要 | 基本库。 |
| CoreTelephony.framework | 必要 | 用于电话相关操作。 |
| AudioToolbox.framework | 必要 | 用于系统录音和播放。 |
| UIKit.framework | 必要 | 用于界面显示。 |
| CoreLocation.framework | 必要 | 用于定位。 |
| Contacts.framework | 可选 | 用于联系人。 |
| AddressBook.framework | 可选 | 用于联系人。 |
| QuartzCore.framework | 必要 | 用于界面显示。 |
| CoreGraphics.framework | 必要 | 用于界面显示。 |
| libc++.tbd | 必要 | 用于支持C++。 |
注意:
- 添加iflyMSC.framework时,请检查工程BuildSetting中的framwork path的设置,如果出现找不到framework的情况,可以将path清空,在Xcode中删除framework,然后重新添加。
- iflyMSC.framework最低支持iOS 8.0。
- Contacts.framework和AddressBook.framework目前SDK中并不需要,demo中由于调用了获取联系人列表接口所以需要添加,开发者如果实际使用中并未用到获取联系人列表则不需要添加。
1.2.2. 设置Bitcode
在Xcode 7,8默认开启了Bitcode,而Bitcode 需要工程依赖的所有类库同时支持。MSC SDK暂时还不支持Bitcode,可以先临时关闭。后续MSC SDK支持Bitcode 时,会在讯飞开放平台上进行SDK版本更新,QQ支持群中同时会有相关提醒,请关注。关闭此设置,只需在Targets - Build Settings 中搜索Bitcode 即可,找到相应选项,设置为NO。
1.2.3. 用户隐私权限配置
iOS 10发布以来,苹果为了用户信息安全,加入隐私权限设置机制,让用户来选择是否允许。隐私权限配置可在info.plist 新增相关privacy字段,MSC SDK中需要用到的权限主要包括麦克风权限、联系人权限和地理位置权限:
<key>NSMicrophoneUsageDescription</key><string></string><key>NSLocationUsageDescription</key><string></string><key>NSLocationAlwaysUsageDescription</key><string></string><key>NSContactsUsageDescription</key><string></string>
即在Info.plist 中增加下图设置:
1.3. 第三步:初始化
初始化示例:
//Appid是应用的身份信息,具有唯一性,初始化时必须要传入Appid。NSString *initString = [[NSString alloc] initWithFormat:@"appid=%@", @"YourAppid"];[IFlySpeechUtility createUtility:initString];
| 参数 | 说明 | 必填 |
|---|---|---|
| appid | 8位16进制数字字符串,应用的唯一标识,与下载的SDK一一对应。 | 是 |
| usr | 开发者在云平台上注册的账号。 | 否 |
| pwd | 账号对应的密码,与账号同时存在。 | 否 |
注意:初始化是一个异步过程,可放在App启动时执行初始化,具体代码可以参照Demo的MSCAppDelegate.m。
1.4. 第四步:启动服务
所有的服务皆遵循如下的流程,如下图:

所有服务的API详细说明可参见:http://mscdoc.xfyun.cn/ios/api/
