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

iOS 5步集成微信/QQ/微博 原生SDK分享, 分享只需一行代码_第1张图片
interface.png

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

一、项目环境搭建

  • cocoaPods
    pod 'WYShareSDK' 集成三大平台的分享登录功能
    pod 'WYShareSDK/QQSDK' 集成QQ分享登录
    pod 'WYShareSDK/WXSDK' 集成微信分享登录
    pod 'WYShareSDK/WeiboSDK' 集成微博分享登录

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

  • 手动集成
    [1]将ShareSDK文件夹中的文件拖入到项目中
iOS 5步集成微信/QQ/微博 原生SDK分享, 分享只需一行代码_第2张图片
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
iOS 5步集成微信/QQ/微博 原生SDK分享, 分享只需一行代码_第3张图片
Paste_Image.png

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

iOS 5步集成微信/QQ/微博 原生SDK分享, 分享只需一行代码_第4张图片
URLScheme.png

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

LSApplicationQueriesSchemes
 

  wechat
  weixin


  sinaweibohd
  sinaweibo
  sinaweibosso
  weibosdk
  weibosdk2.5


  mqqapi
  mqq
  mqqOpensdkSSoLogin
  mqqconnect
  mqqopensdkdataline
  mqqopensdkgrouptribeshare
  mqqopensdkfriend
  mqqopensdkapi
  mqqopensdkapiV2
  mqqopensdkapiV3
  mqzoneopensdk
  wtloginmqq
  wtloginmqq2
  mqqwpa
  mqzone
  mqzonev2
  mqzoneshare
  wtloginqzone
  mqzonewx
  mqzoneopensdkapiV2
  mqzoneopensdkapi19
  mqzoneopensdkapi
  mqzoneopensdk

 

 NSAppTransportSecurity
 
  NSAllowsArbitraryLoads
  
 

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

iOS 5步集成微信/QQ/微博 原生SDK分享, 分享只需一行代码_第5张图片
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 *)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);
    }];

你可能感兴趣的:(iOS 5步集成微信/QQ/微博 原生SDK分享, 分享只需一行代码)