友盟分享中的坑点

说要整理下这边的内容,一直没时间整理,今天有空,就给大家分享下.

关于友盟集成第三方的分享与登录的详细步骤这里不多说,可以参考友盟官方文档,也可参考下边的这几篇文章

  • http://www.jianshu.com/p/4a2a52a06e90?utm_campaign=hugo&utm_medium=reader_share&utm_content=note&utm_source=qq
  • http://www.jianshu.com/p/940ec749102a
  • http://www.jianshu.com/p/6795baf3a000
  • http://www.jianshu.com/p/67edbc4a9f91

这4篇文章讲的很详细,手把手教你如何实现跨平台分享.


但是在集成实现中也遇到不少的坑点,现在把自己遇到的梳理一下供大家参考:

1: 如果友盟使用cocoaPods集成,可能会有路径冲突的问题:这牵涉到相对路径和绝对路径的问题,一般我们在xcode里面配置包含工程目录下头文件的时候,都要关联着相对路径和绝对路径,如果只是自己用这个项目,用绝对路径的问题不大,但是如果你把工程发给别人,别人就要在改这个绝对路径,这时候绝对路径的缺点立马出现。

2: 调用平台的方法:(最好官网里的那三种方法都要写,避免因设备机型环境的问题,某一方法没调用,这点友盟官网没有说清楚,还有就是info.plist要对ios10以上系统进行配置)
需要写成功回调方法:

  func applicationDidBecomeActive(_ application: UIApplication)   {

       UMSocialSnsService.applicationDidBecomeActive()
 }

3: 通过短信邮件进行分享时,调用方法

  UMSocialDataService.default().postSNS(withTypes: <#T##[Any]!#>, content: <#T##String!#>, image: <#T##Any!#>, location: <#T##CLLocation!#>, urlResource: <#T##UMSocialUrlResource!#>, presentedController: <#T##UIViewController!#>, completion: <#T##UMSocialDataServiceCompletion!##UMSocialDataServiceCompletion!##(UMSocialResponseEntity?) -> Void#>)

****这里要注意:****
参数presentedController:要传一个控制器,不然点击没有响应


当然对于邮件短信的分享也可以使用系统的方法:这里就不给相应链接了,网上一搜会有一大群,说的都不错.

你可能感兴趣的:(友盟分享中的坑点)