最近在做友盟的时候,发现几个小问题
- 分享面板无法弹出
解决方案 官方解答
问题可能有下面的原因:
- 创建Xcode项目会默认添加Main.storyboard作为Main Interface(General - Deployment Info),也就是项目的主Window。
- 如果没使用Main.storyboard而又另外在AppDelegate中创建了UIWindow对象,如
self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]
如果项目中同时出现Main Interface以及代码创建UIWindow会导致分享面板无法正常弹出,解决方法是移除其一即可。如果移除了Main.storyboard,需要clean工程后再重新运行。
使用presentViewController或其他无法显示分享面板的情况,参考文档链接修改父窗口回调为self.view或其他指定视图,[设置分享面板代理]
- 面板弹出来了,但是不显示三方APP的图标和文字
解决方案:我在showShareMenuViewInWindowWithPlatformSelectionBlock之前设置了setPreDefinePlatforms该方法,删掉了该方法就好了。目前不清楚为什么,问了客服,客服也没说清楚。