最近使用了友盟的分享,项目是swift语言的版本,但是发现友盟的sdk版本是oc的,首先有种不详的预感啊,好吧,但是项目总是要继续完成的,按照官方文档的指点一步一步的集成,发现原来也不麻烦,无外乎添加库文件,添加编译参数之类的,一切编译都已通过,当兴冲冲的点下相应的分享按钮,预想中的分享界面并没有出现,这落差,哎,只有一步一步的重新检查,然而,经过检查并没有发现问题出现在哪里,没办法,从新把东西删除了,然后重新集成,预料的分享界面还是没有唤出,预料之外的报错到时出现了,说是有些第三方的库文件和我本地的重复了,解决之后,还是唤不出来分享界面,这个时候,仔细查文档,到友盟的官网上提问题,后来才发现解决的办法;如下:
首先,原因是我项目中没有使用xcode自建工程时候带的viewcontroller作为跟视图控制器,我是在appdelegate中直接设置了根视图,这个时候,友盟的sdk会默认将viewcontroller作为根视图,于是导致唤不出分享界面,解决办法:首先在设置根视图的地方重新创建window,并重新设置该window的根视图,然后删除viewcontroller和main storyboard,这个时候运行工程,会发现根本跑不起来,原因是删除了storyboard并没有在相应的plist文件内删除该项,点击进去,如图:
将main storyborad那一项删除掉,即可,然后检查下工程,看下是否window创建好了,根视图是不是添加了,检查后没有问题,运行,会发现,唤起界面问题已经彻底解决了,其实也不麻烦,只是不知道途径,
最后说几个点:首先,我发现,下载sdk的时候,只要选择了相应的,就算写项目的时候不声明该平台,唤起界面的时候依然会有该选项,只能是通过删除相应的包来操作,然后模拟器上和真机上是不同的界面,只有本地安装了相应的客户端,才会显示选项好像,总结之,希望下次可以帮到别人和自己