iOS使用新浪微博、微信官方SDK分享内容

时间:2024-03-06 16:33:45

第三方社交分享

 

1、使用系统自带的Social.framework分享,iOS6之后苹果集成了新浪微博、iOS7之后苹果集成了腾讯微博

2、使用各个平台的官方SDK,并针对各个平台编写各自的分享代码。优点:可控程度高、占用安装包空间小。缺点:代码量相对较多

3、使用第三方集成好的分享SDK,比如:umeng、ShareSDK


本文主要讲述下第二种方法:

1、准备工作:首先,要在各个开放平台申请账号,注册应用,获得相应的appkey、appSecret

新浪微博开放平台:http://open.weibo.com/

微信开放平台:https://open.weixin.qq.com/

2、下载对应平台的SDK,并集成到项目中(微信暂不支持cocoapods,微博支持cocoapods)

3、在项目的info.plist中添加URL types(为了让第三方应用能够通过scheme打开app):id是网站中填写的应用回调url;scheme是“wb+appkey”

4、此步是适配iOS9+系统需要设置的参数,由于iOS9之后苹果对app访问数据的安全性做了提高,需要在info.plist中添加新浪微博白名单“LSApplicationQueriesSchemes”,才能在app中打开新浪微博客户端。

这里有一些常用的第三方应用的白名单:http://www.jianshu.com/p/a8cce94d508e

5、编写对应平台的分享代码:

新浪微博分享代码:

导入微博SDK头文件:"WeiboSDK.h"

在Appdelegate中实现协议:WeiboSDKDelegate

发送纯文字内容分享:


分享纯文字内容到微博

发送图片加文字分享(图片不能超过10M):


分享文字+图片内容到微博

如果客户端安装了微博客户端,直接跳转到客户端进行分享,如果没安装,则在app内弹出登录、分享页面。

分享成功、取消后,回调下面两个方法的其中一个(针对不同iOS版本):


微博、微信客户端打开app

在上图中的方法设置delegate后,并实现响应的方法


分享到微博后,跳回到app回调的方法

 

微信分享代码

导入微信SDK头文件:“WXApi.h”

在AppDelegate中实现协议:“WXApiDelegate”

发送纯文字内容到微信:


分享文字内容到微信

发送多媒体内容到微信(微信分享的缩略图最大不能超过32k):


分享多媒体内容到微信

发送完成后,回调的方法和新浪微博执行的方法一样,只不过回调的协议方法不一样,自行参考代理中的方法



文/A_S123(简书作者)
原文链接:http://www.jianshu.com/p/1e514385d441
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。