第三方登录分享

第三方登录集成问题

2017-01-10  本文已影响564人  我只是个仙

最近在做第三方登录,不同于以往的仅仅是集成友盟或者shareSDK,而是自己集成几大开发者平台的sdk自己来做,所以还是会遇到一些问题,以下是一部分记录,共享给大家,希望能够帮助的一些有问题的朋友们。多多交流。

一、微博集成

.png

二、QQ集成

这个暂时没遇到什么问题,仅仅贴一下代码
<pre><code>
_tencent = [[TencentOAuth alloc]initWithAppId:QQ_APP_Id andDelegate:self];
NSArray* permissions = [NSArray arrayWithObjects:
kOPEN_PERMISSION_GET_USER_INFO,
kOPEN_PERMISSION_GET_SIMPLE_USER_INFO,
kOPEN_PERMISSION_GET_INFO,
nil];
[_tencent authorize:permissions];
</pre></code>

三、微信集成

同上
<pre><code>
if([WXApi isWXAppInstalled] && [WXApi isWXAppSupportApi])
{
SendAuthReq *req = [[SendAuthReq alloc] init];
req.scope = @"snsapi_userinfo,snsapi_base";
req.state = @"";
BOOL bo = [WXApi sendReq:req];
if (bo)
{
//TODO:成功要做的
}
else
{
//TODO:失败要做的
}
} else
{
//TODO:未安装微信客户端
}
</pre></code>

四、支付宝集成

支付宝配置.png
1 、仔细检查自己调用alipay的API时所传参数正确性,一个key都不能错以及每个key的长度
2、sign加密一定要是pkcs8格式的私钥进行加密,这一步不能搞错,不管是服务端来做还是移动端做

代码如下:

<pre><code>NSString * infoStr = [NSString stringWithFormat:@"apiname="com.alipay.account.auth"&method="alipay.open.auth.sdk.code.get"&app_id="%@"&app_name="mc"&biz_type="openservice"&pid="%@"&product_id="APP_FAST_LOGIN"&scope="kuaijie"&target_id="%@"&auth_type="AUTHACCOUNT"",ALI_APP_ID,ALI_PID,@"gd199206150723"];

id<DataSigner> signer = CreateRSADataSigner(ALI_Sign);

NSString * signStr = [signer signString:infoStr];

infoStr = [NSString stringWithFormat:@"sign_type="RSA"&%@&sign="%@"",infoStr,signStr];

[[AlipaySDK defaultService] auth_V2WithInfo:infoStr fromScheme:kAPPScheme callback:^(NSDictionary *resultDic)

{

//TODO:你的处理

}];
</pre></code>

上一篇下一篇

猜你喜欢

热点阅读