YealinkSDK_iOS 集成指南
快速入门
开发准备
本指南概述了如何通过Xcode构建和运⾏应⽤程序。
本指南假设您具备以下条件:
- Xcode 13.4或更⾼版本
- iOS设备(iOS 10或更⾼版本)会议号和会议密码。
- AppId和AppSecret,通过公司技术⽀持⼈员获取。
- YealinkSDK YealinkDemoApp源码 请至 [亿联开发者平台](https://developer.ylyun.com/document/6207)下载
本部分教程演示了如何基于快速集成SDK。
备注:
- 暂时不⽀持模拟器运⾏,且仅⽀持arm64设备的运⾏
快速集成
-
准备步骤
-
点击亿联开发者中心 (ylyun.com)下载正式UI-SDK压缩包并解压。
-
将YealinkSDK文件夹拷贝到您的项目工程中
-
添加依赖
-
在您项目的podfile中添加依赖:
- 您可以参考YealinkDemoApp中的YealinkSDK.podspec和YealinkSDKStatic.podspec文件,并修改source_files为SDK保存的相对路径, 并在您的podfile添加此依赖
target 'xxx' do
use_frameworks!
pod 'YealinkSDK', :path => 'path'
pod 'YealinkSDKStatic', :path => 'path'
end
// xxx为您的项目target,path为podspec文件的相对路径
- 若您的xcode版本为14.0及以上,请添加如下命令到您的podfile文件中:
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '10.0'
config.build_settings['ENABLE_BITCODE'] = 'NO'
config.build_settings['EXPANDED_CODE_SIGN_IDENTITY'] = ""
config.build_settings['CODE_SIGNING_REQUIRED'] = "NO"
config.build_settings['CODE_SIGNING_ALLOWED'] = "NO"
end
end
end
-
执行“pod install”
-
进入podfile所在目录下,执行“pod install”命令
-
更改项⽬配置以实现SDK兼容性
-
pod成功之后,请双击工程的.xcworkspace文件进入工程:
-
如果您使⽤Xcode 11 或更⾼版本构建您的项⽬,SceneDelegates会默认添加到您的项⽬中, SceneDelegates与当前版本的Yealink SDK不兼容 从项⽬导航器中删除SceneDelegate⽂件
-
导航到info.plist > Application Scene Manifest并将其删除
-
请从项⽬导航器中删除SceneDelegate.m和SceneDelegate.h ⽂件。
-
导航到项⽬导航器中的AppDelegate⽂件,并删除⽂件中存在的以下UISceneSession 代码
AppDelegate.m // If you are using Objective-C, delete the following lines of code from  #pragma mark - UISceneSession lifecycle - (UISceneConfiguration \*)application:(UIApplication \*)application con figurationForConnectingSceneSession:(UISceneSession \*)connectingSceneS ession options:(UISceneConnectionOptions \*)options { return [[UISceneConfiguration alloc] initWithName:@"Default Configura } - (void)application:(UIApplication \*)application didDiscardSceneSessio ns:(NSSet\<UISceneSession \*\> \*)sceneSessions { }
-
修改项⽬权限
-
不⽀持Bitcode,到您的Xcode 项⽬⽂件,选择Project > Build Settings,然后搜索Enable Bitcode选项并将该选项的值设置为No。
-
在info.plist⽂件中添加以下权限以授予对在iOS设备上运⾏的app所需的摄像头和⻨克⻛的访问权限。导航到info.plist,单击Information Property List旁边的" + "图标,添加请求访问摄像头和麦克风等隐私的字段。
- 可参考如下字段:
<key>NSBluetoothPeripheralUsageDescription</key> <string>We will use your Bluetooth to access your Bluetooth headphones.</string>
<key>NSCameraUsageDescription</key> <string>For people to see you during meetings, we need access to your camera.</string>
<key>NSMicrophoneUsageDescription</key> <string>For people to hear you during meetings, we need access to your microphone.</string>
<key>NSPhotoLibraryUsageDescription</key\> <string>For people to share, we need access to your photos.</string\>
-
其他配置项
-
请根据下图修改相应后台配置:
-
运行
-
单击Xcode左上⻆的"Build and Run"按钮。成功运行则表示,您已集成SDK到您的项目中,接下来您可以参考我们的典型场景文档,进行鉴权、登录、入会等功能集成。
-
推送服务
-
首先您需要添加 Notification Service Extension通知拓展。使用Xcode打开项目,选中File -> New -> Target...,在出现的弹窗中选择Notification Service Extension模板。如下图所示:
- 接下来,您需要添加此拓展到与您的app相同的appgroup中。如下图所示:
- 您应当注意到项目中应生成了刚才添加的拓展,您需要在NotificationService.m中添加实现接受通知处理,建议直接参考demo提供的示例,并将kAppGroupId替换为您的groupId。
- 您需要在didFinishLaunchingWithOptions生命周期中注册Apns服务,如下图:
- 此外还需要实现NotificationCenter委托,如下图:
-
最后推送服务器需要Yealink推送服务,您还需要提供P8推送证书,关于证书的注册如下:
- 进入apple开发者账户页面,点击如下标识符图标,进入Certificates, IDs & Profiles页面
- 点击选择并添加新的Key
- 填写Key Name,并选择APNs服务。单击Continue进入下一步
- 在如下页面,单击Register
- 单击Download下载证书,并记录Key ID。需要注意的是证书只可下载一次,请妥善保存。
-
屏幕共享服务
-
首先您需要添加 BroadCast Upload Extension拓展。使用Xcode打开项目,选中File -> New -> Target...,在出现的弹窗中选择BroadCast Upload Extension模板。如下图所示:
- 接下来,您需要添加此拓展到与您的app相同的appgroup中。如下图所示:
- 您应当注意到项目中应生成了刚才添加的拓展,您需要在SampleHandler中添加实现分享数据处理,建议直接参考demo提供的示例,并将kAppGroupId替换为您的groupId。
- 最后,修改初始化代码,将初始化参数中的appGroupId设置为您的groupId,replaykitBundleIdentifier设置为分享拓展的appId以实现分享默认选中,如下:
YealinkSDKInitParam *initParam = [[YealinkSDKInitParam alloc] init];
initParam.domain = xxxx; //设置服务器地址
initParam.appGroupId = xxx; //设置groupId
initParam.replaykitBundleIdentifier = xxx; //设置拓展的appId