1.  U-Share SDK集成

1.1 下载U-Share SDK

通过iOS社会化组件选择所需的社交平台后进行下载,下载链接http://dev.umeng.com/social/ios/sdk-download?spm=0.0.0.0.1up3mE

SDK目录介绍
1. Document     - U-Share SDK文档
2. UMSocialDemo - U-Share SDK Demo(如点选下载)
3. UMSocial     - U-Share SDK核心目录
    UMSocialSDK       - U-Share SDK核心framework
    UMSocialUI        - U-Share 分享UI资源、分享面板framework
    SocialLibraries   - 所选择下载的第三方平台SDK及U-Share链接库

1.2  加入U-Share SDK

 将U-Share SDK添加到工程
添加项目配置

在Other Linker Flags加入-ObjC

加入依赖系统库

选中项目Target -> Linked Frameworks and Libraries列表中添加依赖库

SystemConfiguration.framework 

CoreTelephony.framework 

ImageIO.framework 

libsqlite3.tbd 

libc++.tbd 

libz.tbd

2.  U-Share SDK平台配置

从这一步骤就开始需要第三方appKey和appSecret等信息,可参考链接http://dev.umeng.com/social/ios/operation申请所需的平台账号。

2.1  配置各平台URL Scheme

2.1.1  添加URL Types

  • URL Scheme是通过系统找到并跳转对应app的一类设置,通过向项目中的info.plist文件中加入URL types可使用第三方平台所注册的appkey信息向系统注册你的app,当跳转到第三方应用授权或分享后,可直接跳转回你的app。
  • 添加URL Types有如下几处,都可进行设置
  • 通过工程设置面板
  • 通过info.plist文件编辑
  • 直接编辑info.plist中XML代码

2.1.2  配置第三方平台URL Scheme

未列出则不需设置

 

格式

举例

备注

微信

微信appKey

wxdc1e388c3822c80b

 

QQ/Qzone

以下两项都需添加:

1、"tencent"+腾讯QQ互联应用appID 

2、“QQ”+腾讯QQ互联应用appID转换成十六进制(不足8位前面补0)

appID:100424468

1、tencent100424468 

2、QQ05fc5b14

100424468转十六进制为5fc5b14,因不足8位向前补0,结果为05fc5b14,加"QQ"前缀QQ05fc5b14

新浪微博

“wb”+新浪appKey

wb3921700954

 

钉钉

钉钉appkey

dingoalmlnohc0wggfedpk

URL Type中的identifier填"dingtalk"

支付宝

“ap”+appID

ap2015111700822536

URL Type中的identifier填"alipayShare"

易信

易信appkey

yx35664bdff4db42c2b7be1e29390c1a06

 

点点虫

点点虫appID

8112117817424282305

URL Type中的identifier填"Laiwang"

2.2  适配iOS9/10系统

iOS9系统后Apple对HTTP请求及访问外部应用做了更加严格的要求,包括HTTP白名单、跳转第三方应用白名单等

2.2.1 HTTPS传输安全

以iOS10 SDK编译的工程会默认以SSL安全协议进行网络传输,即HTTPS,如果依然使用HTTP协议请求网络会报系统异常并中断请求。目前可用如下两种方式保持用HTTP进行网络连接:

在info.plist中加入安全域名白名单(右键info.plist用source code打开)<key>NSAppTransportSecurity</key>

<dict>
   <!-- 配置允许 http的任意网络Begin-->
    <key>NSAllowsArbitraryLoads</key>
    <true/>
    <!-- 配置允许 http的任意网络End-->
   <key>NSExceptionDomains</key>
   <dict>
       <!-- U-Share必须配置的HTTP白名单-->
       <key>log.umsns.com</key>
       <dict>
           <key>NSIncludesSubdomains</key>
           <true/>
           <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
           <true/>
           <key>NSTemporaryExceptionMinimumTLSVersion</key>
           <string>TLSv1.1</string>
       </dict>
       <key>sns.whalecloud.com</key>
       <dict>
           <key>NSIncludesSubdomains</key>
           <true/>
           <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
           <true/>
           <key>NSTemporaryExceptionMinimumTLSVersion</key>
           <string>TLSv1.1</string>
       </dict>
       <!-- U-Share-->
       <!-- 集成微信、QQ、Qzone、腾讯微博授权对应的HTTP白名单-->
       <key>qq.com</key>
       <dict>