IM 即时通讯 (442)
Android (209)
- 初始化&链接 (8)
- 事件&监听处理 (7)
- 用户信息 (13)
- 会话列表 (16)
- 聊天会话 (26)
- 消息处理 (35)
- 自定义消息 (6)
- 音视频 (2)
- 推送&通知 (34)
- 扩展功能 (4)
- 第三方地图 (3)
- 依赖&配置 (9)
- 升级说明 (3)
- 其他 (43)
iOS (168)
- SDK 导入 (10)
- 连接 (8)
- 事件处理 (2)
- 用户信息 (3)
- 会话列表 (14)
- 聊天会话 (44)
- 消息处理 (26)
- 自定义消息 (8)
- 推送&通知 (19)
- 扩展功能 (5)
- 国际化 (4)
- 音视频 (3)
- 其他 (22)
Web (36)
Server (29)
FileProvider冲突问题
工程里有多个module应用FileProvider时,编译器在编译工程合并manifest文件时候就抛出了provider冲突问题,其中的authrities冲突了。
发布时间: 2018-03-30 15:11
回答:
应用中用的都是v4包提供的FileProvider类来读写文件的,会导致冲突。
所以我们自己在工程中重新写一个FileProvider类继承自系统的FileProvider类来读写文件就可以解决问题。
如果在编译成功后,启用拍照功能抛出异常:
exception:java.lang.RuntimeException: Please check IMKit Manifest FileProvider config. exception:java.lang.NoSuchFieldError: No field rc_authorities_fileprovider of type I in class Lio/rong/imkit/R$string;
请检查 manifest 文件有关 provider 配置的 authorities 属性 "FileProvider" 单词大小写是否填写正确
另外如果想自定义 authorities 字段中的后缀内容,在 IMKit 的资源目录中找到 rc_defaults.xml,将该 xml 中的 rc_authorities_fileprovider 标签内的内容修改为自己想要定义的后缀内容(默认为 .FileProvider ,包名部分不可修改,仅可修改后缀)即可。