集成方式
更新时间: 2025/01/09 10:46:56
本文介绍了如何将网易云信 IM 即时通讯 SDK 集成到 Unity 项目中,包括导入 SDK、配置安卓和 iOS 项目的权限和编译设置,以及处理隐私权限等注意事项。
环境要求
网易云信 Unity SDK 支持的客户端系统版本如下:
- 安卓:4.0 及以上。
- iOS:8.0 及以上。
导入 SDK
-
在 网易云信 IM SDK 下载页面 获取 Unity SDK。
-
解压缩后,将
UNITY_IM_SDK.unitypackage导入到项目中。UNITY_IM_SDK.unitypackage不支持中文路径,请将文件放在全英文路径下。
-
导入时,选择里面所有的文件。如果之前使用过旧版本,请务必先删除旧版本相关的文件,然后再导入。
如果出现报错
The type or namespace name 'JsonProperty' could not be found (are you missing a using directive or an assembly reference?),请在 Unity 项目中Packages目录下的manifest.json文件中增加包依赖"com.unity.nuget.newtonsoft-json": "2.0.0",。
安卓项目设置
-
导入 SDK 后,在
Plugins/Android/目录下,可以看到Android Manifest里 SDK 所需权限:XML<uses-permission android:name="android.permission.INTERNET" /> <!-- Getting the state of internet for app!!!. --> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <!-- write or read user data file for app!!!. --> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_LOGS" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /> <uses-permission android:name="android.permission.RECORD_AUDIO" /> <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/> -
您需要将这些 SDK 权限,添加到安卓项目 Manifest 文件中。
iOS 项目设置
导出 iOS 项目时,必须修改如下设置项才能正常使用。不发布到 iOS 平台可略过此部分。
-
在 Unity 中,修改项目的编译设置。
-
按下 Ctrl+Shift+B 快捷键,打开 Build Settings 面板。
-
单击 Player Settings ...,切换到 Setting for iOS 选项卡,选择 Other Settings 栏。
-
修改 Optimization 配置项 Script Call Optimization 的值为 Slow and Safe。
-
-
在 Xcode 中,修改导出的 iOS 工程的编译配置。
-
添加 Other Linker Flags 配置 -lstdc++。
-
确认项目中已添加了以下系统库。
*Security.framework* *CoreTelephony.framework* *SystemConfiguration.framework* *JavaScriptCore.framework* *libz.tbd* *libsqlite3.tbd* -
在 TARGETS 下选择编译的目标配置,切换到 Build Settings 选项卡,修改配置如下。
在使用旧版本的 Unity 工具,Windows 下生成的 Xcode 工程,可能会出现下面的问题:
Build Settings 选项卡,Search Paths > Library Search Paths 其中一个路径分隔符,是反斜杠(
\),请修改为正斜杠(/)。
-
注意事项
如果 Unity SDK 是手动配置的话,您需要注意 Bitcode 问题:
-
如果在编译 Xcode 时,提示 bitcode 问题,则关闭 bitcode 或者在 Unity 里也配置支持 bitcode。
-
Unity 4.6.9 之前的版本不支持 bitcode 的设置,但是生成的 Xcode 工程,使用 Xcode7 打开就会提示 bitcode 的错误,因为 Xcode7 默认是开启 bitcode 的。
权限设置
iOS 10 要求开发者添加权限申请的描述,否则程序在 iOS 10 上会出现崩溃。例如,如果您需要使用语音消息,请添加麦克风权限申请的描述。有两种方式可以添加:
-
方式一:Unity 的最新版本中,在 Player Settings 页面可以添加描述信息。
-
方式二:在 Xcode 项目中找到
info.plist,打开并添加以下键值对。- key:Privacy - Microphone Usage Description
- value:是否允许此 app 使用麦克风?
下一步
集成 SDK 后,您可以继续进行 初始化。





