swift3.0使用最新友盟分享SDK6.1.0

最近因为项目原因,需要用到分享的功能,找了几家公司的SDK最后选择用友盟实现分享,官方的SDK社会化组件已经更新到了SDK6.1.0。用swift3.0实现发现了一些坑和问题。在这里简单的贴一下。

首先,先做准备工作

先注册友盟的开发者账号,下载最新版本SDK,可以选择你需要分享的平台,我这里选择了微信,qq,和新浪微博。分享集成-社会化iOS组件


swift3.0使用最新友盟分享SDK6.1.0_第1张图片

然后在友盟注册你的工程 获取一个APPKEY!!


swift3.0使用最新友盟分享SDK6.1.0_第2张图片
获取appkey

接下来进行集成,打开你的工程。我用的是手动集成,首先把下载好的SDK导入项目中

swift3.0使用最新友盟分享SDK6.1.0_第3张图片
SDK

直接拖拽到工程里就可以了:


swift3.0使用最新友盟分享SDK6.1.0_第4张图片
将SDK导入项目

然后在工程配置里添加-ObjC:


swift3.0使用最新友盟分享SDK6.1.0_第5张图片

导入系统依赖库:

将这些依赖库导入到工程里,我这里导入的是微信,qq,新浪微博(需要其他的平台可以自己导入依赖库):


swift3.0使用最新友盟分享SDK6.1.0_第6张图片
微信,qq,新浪微博依赖库

接下来就是配置各平台的URL Scheme了,URL Scheme是通过系统找到并跳转对应app的一类设置,通过向项目中的info.plist文件中加入URL types可使用第三方平台所注册的appkey信息向系统注册你的app,当跳转到第三方应用授权或分享后,可直接跳转回你的app。

首先,我们先去注册一下,我只用微信的作为例子,剩下的平台大同小异,你们自己去配置吧

我们先进微信开发者平台,申请账号,注册工程,获取AppID和AppSecret!!AppSecret这个东西一定要记住,一定!!!微信审核的时候会有一定的时间,不长!


swift3.0使用最新友盟分享SDK6.1.0_第7张图片
在微信开放平台创建应用

注册完之后把AppId拿出来用来配置URL Scheme,这个东西可以在工程面板里面配置,也可以在info.plist文件里面配置。我选择的是在工程面板里面配置

因为第三方的库使oc写的,所以要写一个桥接文件,并且引入头文件:


swift3.0使用最新友盟分享SDK6.1.0_第8张图片
桥接文件

现在所有的集成就都结束了,command+b!!!试一下没有报错就说明你集成好了,我们就可以开始写代码了!!!

进到AppDelegate.swift的文件中,开始写代码,首先我们先初始化一下各个平台,并验证一下友盟的appkey,这里我只初始化了微信的平台,其他的平台类似只是更改一下UMSocialPlatformType.wechatSession这句话就可以了,然后把刚刚注册的appKey和appSecret填写上去,最后分享一个网址!


swift3.0使用最新友盟分享SDK6.1.0_第9张图片
初始化平台

初始化个大平台之后我们就要开始设置系统的回调,回调很重要用回调的信息来判断是否分享成功,let result = UMSocialManager.default().handleOpen(url)不写这句就没有办法在viewcontroller里面处理回调的信息,别忘了调用函数:


swift3.0使用最新友盟分享SDK6.1.0_第10张图片
系统回调

写到这里appdelegate里的代码就写完了,我们回到viewcontroller里面,来写一个按钮使用系统样式来分享:


swift3.0使用最新友盟分享SDK6.1.0_第11张图片
按钮代码

然后就可以在btnClick()函数里面写分享的代码了


swift3.0使用最新友盟分享SDK6.1.0_第12张图片
分享图片


swift3.0使用最新友盟分享SDK6.1.0_第13张图片
分享网址

写到这里基本的套路就算写好了,最后设置一下白名单就可以了,白名单在info.plist里面设置不废话上图:


swift3.0使用最新友盟分享SDK6.1.0_第14张图片
白名单

你可能感兴趣的:(swift3.0使用最新友盟分享SDK6.1.0)