技术重塑iOS开发资料收集区IOS三人行

iOS 5步集成微信/QQ/微博 原生SDK分享, 分享只需一行

2016-09-06  本文已影响1104人  倚楼听风雨wing
interface.png

demo地址:https://github.com/wangyansnow/WYShareSDK
里面包含三大平台所需SDK.只需下载下来后把ShareSDK这个文件夹拖入项目即可

一、项目环境搭建

如果使用cocoaPods的方式集成,则只需要做下面手动集成的[3]、[4]两步即可。[推荐使用]
如果你的Podfile中使用了use_frameworks!集成了微博SDK则还需要做以下操作:
找到Pods中WeiboSDK.bundle拖入到宿主工程中

ShareSDK.png

[2]链接所需的系统库

1.  CoreText.framework
2.  ImageIO.framework
3.  QuartzCore.framework
4.  CoreGraphics.framework
5.  Security.framework
6.  SystemConfiguration.framework
7.  CoreTelephony.framework
8.  libsqlite3.0.tbd
9.  libsqlite3.tbd
10. libstdc++.tbd
11. libiconv.tbd
12. libz.tbd
13. libc++.tbd
Paste_Image.png

[3]在Xcode中,选择你的工程设置项,选中TARGETS一栏,在info标签栏的URL type添加URL scheme 为你在各大平台所注册应用程序的id (如下图所示)

URLScheme.png

[4]针对iOS9的适配.右击项目中的info.plist,然后用Open as -> Source Code的方式打开,增加如下代码:
注:如果只集成了微信,那么就只需要添加微信的部分即可

<key>LSApplicationQueriesSchemes</key>
 <array>
<!--  微信  -->
  <string>wechat</string>
  <string>weixin</string>
<!--  微信  -->
<!--  微博  -->
  <string>sinaweibohd</string>
  <string>sinaweibo</string>
  <string>sinaweibosso</string>
  <string>weibosdk</string>
  <string>weibosdk2.5</string>
<!--  微博 -->
<!--  QQ  -->
  <string>mqqapi</string>
  <string>mqq</string>
  <string>mqqOpensdkSSoLogin</string>
  <string>mqqconnect</string>
  <string>mqqopensdkdataline</string>
  <string>mqqopensdkgrouptribeshare</string>
  <string>mqqopensdkfriend</string>
  <string>mqqopensdkapi</string>
  <string>mqqopensdkapiV2</string>
  <string>mqqopensdkapiV3</string>
  <string>mqzoneopensdk</string>
  <string>wtloginmqq</string>
  <string>wtloginmqq2</string>
  <string>mqqwpa</string>
  <string>mqzone</string>
  <string>mqzonev2</string>
  <string>mqzoneshare</string>
  <string>wtloginqzone</string>
  <string>mqzonewx</string>
  <string>mqzoneopensdkapiV2</string>
  <string>mqzoneopensdkapi19</string>
  <string>mqzoneopensdkapi</string>
  <string>mqzoneopensdk</string>
<!--  QQ  -->
 </array>
<!--  让iOS9 退回到以前可以支持http请求  -->
 <key>NSAppTransportSecurity</key>
 <dict>
  <key>NSAllowsArbitraryLoads</key>
  <true/>
 </dict>

[5]选中项目设置,在Build Settings中的Other Linker Flags中增加-fobjc-arc-ObjC

Paste_Image.png

这时编译一下你的项目,如果没有报错,恭喜你环境搭建成功

2.分享的代码使用

AppDelegate中注册 微信/QQ/和微博

#import "AppDelegate.h"
#import "WYShareSDK.h"

/** 在三大平台注册的应用ID */
#define WXAppId    @"wx7074076f395c69d9"
#define WXAppSecret @"b725568e876x303191defc3123bf8bcf"
#define QQAppId    @"1103515189"
#define WBAppKey    @"2273722657"

@interface AppDelegate ()

@end

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    
    [WYShareSDK wy_registerQQApp:QQAppId];
    [WYShareSDK wy_registerWeiboApp:WBAppKey];
    [WYShareSDK wy_registerWeChatApp:WXAppId wxAppSecret:WXAppSecret];
    
    return YES;
}

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString *,id> *)options {
    
    return [WYShareSDK wy_handleOpenURL:url];
}

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url {
    
    return [WYShareSDK wy_handleOpenURL:url];
}

@end

在需要分享的地方直接导入WYShareSDK.h,调用其对应的方法分享到各个平台.例:

[WYShareSDK wy_weChatShareText:@"分享一个" finished:^(WYShareResponse *response) {
        if (response.isSucess) {
            NSLog(@"分享成功");
            return;
        }
        NSLog(@"分享失败 error = %@", response.errorStr);
    }];
上一篇下一篇

猜你喜欢

热点阅读