KKWeiboSDK 3.1.3.0

KKWeiboSDK 3.1.3.0

测试已测试
语言语言 Obj-CObjective C
许可证 自定义
发布上次发布2015年12月

appwgh维护。



KKWeiboSDK 3.1.3.0

  • sdk4wb

新浪微博SDK,和新浪微博官方同步。

概述

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

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 认证流程进行了简单的封装。
微博登出按钮主要提供一键登出的功能,帮助开发者主动取消用户的授权。

4. OpenAPI 通用调用

OpenAPI 通用调用接口,帮助开发者访问开放平台 open API (http://open.weibo.com/wiki/%E5%BE%AE%E5%8D%9AAPI) 此外,还提供了一系列封装了 open API 调用的接口,方便开发者使用。

5. 社会化评论服务、原生关注组件

提供社会化评论按钮和原生关注按钮,简化用户进行关注以及评论的流程。

适用范围

要使用此SDK,必须满足以下条件

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

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

iOS9的适配问题

由于 iOS9 的发布影响了微博 SDK 与应用的集成方式,为了确保良好的应用体验,我们需要采取以下措施:

1. 对传输安全的支持

在新一代的 iOS 系统中,默认需要为每次网络传输建立 SSL。解决这个问题有两种方法:

- A. 建立白名单并将其添加到您的 app 的 Info.plist 中

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSExceptionDomains</key>
    <dict>
        <key>sina.cn</key>
        <dict>
            <key>NSIncludesSubdomains</key>
            <true/>
            <key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
            <false/>
        </dict>
        <key>weibo.cn</key>
        <dict>
            <key>NSIncludesSubdomains</key>
            <true/>
            <key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
            <false/>
        </dict>
        <key>weibo.com</key>
        <dict>
            <key>NSIncludesSubdomains</key>
            <true/>
            <key>NSThirdPartyExceptionAllowsInsecureHTTPLoads</key>
            <true/>
            <key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
            <false/>
        </dict>
        <key>sinaimg.cn</key>
        <dict>
            <key>NSIncludesSubdomains</key>
            <true/>
            <key>NSThirdPartyExceptionAllowsInsecureHTTPLoads</key>
            <true/>
            <key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
            <false/>
        </dict>
        <key>sinajs.cn</key>
        <dict>
            <key>NSIncludesSubdomains</key>
            <true/>
            <key>NSThirdPartyExceptionAllowsInsecureHTTPLoads</key>
            <true/>
            <key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
            <false/>
        </dict>
        <key>sina.com.cn</key>
        <dict>
            <key>NSIncludesSubdomains</key>
            <true/>
            <key>NSThirdPartyExceptionAllowsInsecureHTTPLoads</key>
            <true/>
            <key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
            <false/>
        </dict>
    </dict>
</dict>

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

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

<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
</true>
</dict>

2.对应用跳转的支持

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

<key>LSApplicationQueriesSchemes</key>
<array>
    <string>sinaweibohd</string>
    <string>sinaweibo</string>
    <string>weibosdk</string>
    <string>weibosdk2.5</string>
</array>

3.应用瘦身与bitcode

苹果在iOS 9的SDK中添加了对应用瘦身的支持,其中包括bitcode。我们也在最新的代码中加入了bitcode的支持。