iOS集成友盟第三方(社会化)分享遇到的坑

    之前用自己的电脑按照友盟官方集成文档,一步一步走,是完全没问题的。集成了两次都没有问题。前几天用新电脑又集成了一次,突然各种bug各种故障。我使用的是6.4.4版本的SDK,集成的是QQ、微信、邮件和短信(后两者是苹果本机应用)。总结一下遇到的坑和解决办法。

    我问了Umeng客服精简版和完整版有什么区别。Umeng客服说只是SDK大小的区别,功能上没有任何区别。首先考虑到可能会对APP安装包体积影响过大。我用的是精简版的SDK。

一:平台选择框可以正常弹出,但是是空白的,不显示任何平台

    为了证实是不是精简版的原因导致的,我下载了完整版SDK拖入项目中,并且按照完整版的配置步骤配置了一遍(就多了一步,添加依赖库,精简版不需要添加依赖库)。还是出现这个状况。最后发现是因为没导入库文件(QQ、微信、邮件、短信的.a库)。我以前使用的时候都是拖入项目中之后XCode自动把.a和.framework导入了。这次没有。友盟的库没导入使用会报错,全是手动添加进去的。第三方平台的库没导入我没发现是因为根本不会报错。猜测精简版没有平台显示也是这个原因。

二:显示出来了各大平台,但是图标是白的

    问了Umeng客服,客服说是因为bundle资源包没导入。可是我确实是将整个下载的文件夹拖入了项目里。后来百度有关bundle资源包无法读取的问题,发现可能和拖入的时候的选项有关。别的文件夹都是黄色的。拖进去的文件夹却是蓝色的。

目录示意图

    百度相关问题。具体原因和黄\蓝文件夹区别参考简书:www.greatytc.com/p/d32ef81c83c7

    原因是因为我拖入的时候选择的是Create folder references。应该选择Create groups

错误选择项示意图

    我删除了SDK,重新导入,选择了Create groups。图标即可正常显示。猜测上个没有自动导入库文件的问题也是因为这个。

三:只想保留部分平台,使用方法删除,只有部分平台删除操作生效

    例如我想删除微信朋友圈平台和QQ空间平台,保留微信好友和QQ好友。友盟集成文档对应代码为:

友盟社会化分享iOS集成文档截图

    我的代码是完全复制下来的,只修改了APPKey、APPSecret和注释等。如下图所示

有bug的代码部分截图

    运行后发现只删除了微信的朋友圈,QQ空间未删除。

解决:如果你想删除多平台的对应功能,把移除平台的代码放在所有设置APPKey和APPSecret的代码后面。

如下图所示

修改后的代码

这样就可以正常删除了。


暂时有这三个问题。以后再遇到问题会持续更新。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容