微博 SDK 3.3.5

Weibo_SDK 3.3.5

测试已测试
Lang语言 Obj-CObjective C
许可证 NOASSERTION
发布上次发布2022年10月

sinaweibosdkmeimeiWeiboSDKsinaweibosdk 维护。



Weibo_SDK 3.3.5

  • 作者:
  • xingda

ReadMe

为了方便第三方开发者快速集成微博 SDK,我们提供了以下联系方式,协助开发者进行集成:
QQ群:453830884(iOS 请加此群) 226214250(此群已满) 263989257(此群已满)
284084420(此群已满)
邮箱:[email protected]
微博:移动新技术
此外,关于 SDK 的 Bug 反馈、用户体验以及好的建议,请尽量提交到 Github 上,我们会尽快解决。
目前,我们正在逐步完善微博 SDK,争取为第三方开发者提供一个规范、简单易用、可靠、可扩展、可定制的 SDK,敬请期待。

概述

微博 iOS 平台 SDK 为第三方应用提供了简单易用的微博 API 调用服务,使第三方客户端无需了解复杂的验证机制即可进行授权登录,并提供微博分享功能,可直接通过微博官方客户端分享微博。

## 快速集成 WeiboSDK 支持使用 Cocoapods 集成,请在 Podfile 中添加以下语句:

pod "Weibo_SDK", :git => "https://github.com/sinaweibosdk/weibo_ios_sdk.git" 

## API 文档 http://sinaweibosdk.github.io/weibo_ios_sdk/index.html

## 常见问题 FAQ https://github.com/sinaweibosdk/weibo_ios_sdk/blob/master/FAQ.md

名词解释

名词 注释
AppKey 分配给每个第三方应用的 app key。用于身份验证,显示来源等功能。
RedirectURI 应用回调页面,可在新浪微博开放平台->我的应用->应用信息->高级应用->授权设置->应用回调页中找到。
AccessToken 表示用户身份的 token,用于微博 API 的调用。
Expire in 过期时间,用于判断登录是否过期。

功能列表

1. 认证授权

为开发者提供 OAuth2.0 授权认证,并集成 SSO 登录功能。

2. 微博分享

支持将信息从第三方应用分享到微博,目前只支持通过微博官方客户端进行分享。

3. 登入登出

微博登入按钮主要用于简化用户的 SSO 登录,实际上,它内部是对 SSO 认证流程的简单封装。
微博登出按钮主要提供一键登出功能,帮助开发者主动取消用户的授权。

适用范围

使用此 SDK 需满足以下条件

  • 在新浪微博开放平台注册并创建应用
  • 已定义本应用的授权回调页
  • 已选择应用为 iOS 平台,并正确填写 Bundle id 和 apple id

注:关于授权回调页,对于移动客户端应用来说,用户是不可见的,因此定义为何种形式都将不影响,但是如果没有定义将无法使用 SDK 进行认证登录。建议使用默认回调页 https://api.weibo.com/oauth2/default.html

iOS9的适配问题

由于 iOS9 的发布影响了微博 SDK 与应用的集成方式,为确保良好的应用体验,我们需要采取以下措施:###1. 对传输安全的支持 在新一代的 iOS 系统中,默认需要为每次网络传输建立 SSL。解决这个问题有两种方法:

  • A.建立白名单并将其添加到您应用的 Info.plist 中

如果未添加,可能会遇到“发生SSL错误,无法建立到服务器的安全连接”等问题。

  • B. 强制将NSAllowsArbitraryLoads属性设置为YES,并添加到应用的plist中
  • NSAppTransportSecurity NSAllowsArbitraryLoads

###2. 对应用跳转的支持 如果需要使用微博的相关功能,如登录、分享等,并且需要实现跳转到微博的功能,在iOS9系统中,需要在应用的plist中添加以下键值对。否则,在执行canOpenURL函数时,将返回NO。详情请参考https://developer.apple.com/videos/wwdc/2015/?id=703

  • LSApplicationQueriesSchemes sinaweibohd sinaweibo weibosdk weibosdk2.5 weibosdk3.3

###3. 应用瘦身与bitcode 苹果在iOS9的SDK中添加了对应用瘦身的支持,其中包括bitcode。我们也在最新的代码中添加了对bitcode的支持。

关于ADSupport集成的问题

关于第三方应用开发者是否集成本地ADSupport.framework的问题:

  1. 如果开发者希望集成本地ADSupport.framework,在提交ipa到店面时,勾选用于跟踪用户广告效果的选项即可。具体操作可参考友盟 http://bbs.umeng.com/forum.php?mod=viewthread&tid=6242&aid=1611&from=album&page=1&mobile=2

  2. 如果开发者希望不集成本地ADSupport.framework,可直接删除,使用微博SDK并不强制要求第三方开发者集成本地ADSupport.framework。不集成本地ADSupport.framework不会影响WeiboSDK的正常使用。

关于IPv6支持的问题

由于苹果商店从6月1日起强制应用程序支持IPv6-only网络,微博SDK这边也做了相应的支持,更新了使用的底层网络代码,包括reachability库。

iOS10的适配问题

由于iOS10的发布,原有的ATS设置在iOS10上会导致https网络访问受限的问题。为了确保良好的应用体验,我们需要采取以下措施:

  •   	<key>sina.com.cn</key>
      	<dict>
      		<key>NSIncludesSubdomains</key>
      		<true/>
      		<key>NSThirdPartyExceptionAllowsInsecureHTTPLoads</key>
      		<true/>
      		<key>NSExceptionMinimumTLSVersion</key>
      		<string>TLSv1.0</string>
      		<key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
      		<false/>
      	</dict>
    

需要在每个域名下添加NSExceptionMinimumTLSVersion这样的key,值的部分为TLSv1.0

3.2.0版本更新

微博移动SDK 3.2 围绕“分享+连接”这个核心主题,面向开发者,主要规划了4个功能模块:SDK初始化、使用微博账号登录、分享到微博、连接到微博。其他功能已迁移、下线或在未来的版本中将下线。具体变动的功能如下:

  1. 热评与关系化组件下线
  2. 私信分享功能及私信应用推荐功能下线
  3. SDK不再包裝访问openAPI的接口,SDK对外提供的网络访问工具WBHttpRequest也将逐步下线。开发者在使用微博openAPI接口时,需要使用自己的网络模块并按照平台的接口文档进行调用
  4. 短信注册登录功能下线
  5. 多媒体分享功能整体修改,在微博客户端7.5.0及以后的版本中,分享到发布器的多媒体对象将不再以linkcard显示,转而以文本链接的形式插入到分享的文本中。该功能的修改不会影响到分享内容在信息流中的显示,凡是经过商务对接的第三方,发出去的多媒体对象在信息流中就会显示linkcard。并且该功能将在后期进一步修改。

在新的SDK中还有部分功能未完善,将在近期的版本更新中逐步完善:

  1. 由于部分H5模块对TLS1.2的支持存在问题,因此目前SDK的ATS还不能完全打开
  2. 连接到微博的功能还有部分不太完善,将在后期的版本中逐步修改

3.2.1版本更新

微博移动SDK 3.2.1版本在精简原有统计功能的基础上,更新了原有的分享功能,使分享功能更加多样化。具体变更如下:

  1. 统计功能调整,预计后期以组件形式提供
  2. 原有的图片分享功能从单张图纸的形式,扩展为相册多图和视频模式
  3. 新增分享到Story的功能,支持单图或视频形式

3.2.5版本更新

微博移动SDK 3.2.5版本的变更如下:

  1. 替换UIWebView控件
  2. 适配iOS 13,禁用暗黑模式,全屏展示页面
  3. 删除无用代码及“支付”相关字符,优化内容,缩减包大小

3.2.6版本更新

微博移动SDK 3.2.6版本的变更如下:

  1. 修复部分页面适配问题及iTunes下载链接失效问题
  2. 修复issue中部分问题
  3. 修改文档,增加常见问题解答

3.2.7版本更新

微博移动SDK 3.2.7版本的变更如下:

  1. 替换NSURLConnection相关API
  2. 替换UIAlertView相关API
  3. 增加i386架构

3.3.0版本更新

微博移动SDK 3.3.0版本的变更如下:

  1. 增加支持universalLink分享跳转
  2. 修改iOS 14分享多图和视频丢数据问题
  3. 可以设置不获取idfa
  4. 删除分享获取相册权限

注意:更新到3.3.0版本后,一定要在工程scheme白名单中添加weibosdk3.3,否则iOS 14的配置将无法生效