对于第三方登录和分享,当我们做熟了就会发现三种登录和分享的方式都是大同小异,流程基本上也一样,只要我们掌握其中的一种,其他的只需要看看文档就会很快做完,下面我们就先介绍微信.
一 微信
1.1微信登录
具体iOS微信集成指南点击查看iOS指南
1.1.1 申请账号
向微信的开放平台申请开发账号点击打开连接申请
1.1.2下载微信SDK
SDK文件包括 libWeChatSDK.a,WXApi.h,WXApiObject.h 三个。
如选用手动集成,请前往资源下载页下载最新SDK包
1.1.3环境搭建
1.新建工程,将sdk全部拖进去.
工程导入
2.微信开放平台新增了微信模块用户统计功能,便于开发者统计微信功能模块的用户使用和活跃情况。开发者需要在工程中链接上:SystemConfiguration.framework, libz.dylib, libsqlite3.0.dylib, libc++.dylib, Security.framework, CoreTelephony.framework, CFNetwork.framework。
3.在你的工程文件中选择Build Setting,在"Other Linker Flags"中加入"-Objc -all_load",在Search Paths中添加 libWeChatSDK.a ,WXApi.h,WXApiObject.h
4.在Xcode中,选择你的工程设置项,选中“TARGETS”一栏,在“info”标签栏的“URL type“添加“URL scheme”为你所注册的应用程序id
5.在Xcode中,选择你的工程设置项,选中“TARGETS”一栏,在“info”标签栏的“LSApplicationQueriesSchemes“添加微信的白名单,主要是为了手机端进行登录可以直接进入微信客户端中
这块我把所有需要添加的白名单都添加了,基本上是比较全的,项目中有需要用的的可以直接复制进去
1.1.3代码实现
这里的代码可能跟微信官方下载下来的demo中的代码位置有区别,是因为我这边做了一些小的封装,但调用的方法没有变(我这边只把实现的流程展示出来,具体代码可以参考我的demo或者官方demo)
1.要使你的程序启动后微信终端能响应你的程序,必须在代码中向微信终端注册你的id,在AppDelegate的- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions中注册微信
需要导头文件
#import "WXApi.h"
#import "WXApiObject.h"
//向微信注册
-(BOOL)WXRegister{
return [WXApi registerApp:KWXAPPID];
}
2.重写AppDelegate的handleOpenURL和openURL方法(后面写的QQ,和微博一样的处理):