私有云 SDK 集成后数据库文件无法打开

集成了私有云 IM 后消息数据库解密失败,但是相关数据在应用中能正常显示,实体文件取出后无法打开也无法解密
发布时间: 2021-01-21 21:13

回答:

问题原因

私有云 IMLib 提供了数据库加密功能,并且其中包含了一份 sqlite3 的源码,所以使用私有云 IM 库的项目中就不能再引入其它 sqlite 库了,引用系统的或者手动加入的都可能会造成异常

解决方案

  1. 在 Xcode 中查看对应 TARGETS 的 Build Phases -> Link Binary With Libraries 下是否有手动引入系统 sqlite 库,有的话需要删除

    截屏2021-01-21_下午8_47_28.png

  2. 如果在 Link Binary 下未发现系统库但是依旧出现上述问题则需要检查下项目是否有使用 CocoaPods,通过其引入的第三方可能会在配置中添加系统库,详细可打开对应工程查看 Pods 文件夹下生成的两个 xcconfig 文件,里面如果有引入 sqlite3 需要每次 Pod 更新后手动或者通过执行脚本删除

截屏2021-01-21_下午9_08_55.png