日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[iOS常见问题] 关于使用QQ做第三方登录的问题!

發(fā)布時間:2024/10/12 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [iOS常见问题] 关于使用QQ做第三方登录的问题! 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

[iOS常見問題]?關于使用QQ做第三方登錄的問題!?



注意:QQ本身沒有授權功能,所以想要使用QQ做第三方登錄必須通過QQ空間來實現!

第一步:集成ShareSDK(步驟同集成分享的一樣,如果已經集成過就不用再重新集成了),這里需要注意的是,由于是要通過QQ空間來實現授權登錄,所以在下載ShareSDK包的時候別忘了勾選QQ空間,不然會報尚未導入平臺(6)的錯誤。

第二步:打開工程中的*AppDelegate.m(*代表你的工程名字)?文件,導入QQSDK的頭文件:
? ?? ?? ?? ?#import <TencentOpenAPI/QQApiInterface.h>
? ?? ?? ?? ?#import <TencentOpenAPI/TencentOAuth.h>

? ?? ??檢查是否已加入handleOpenURL的處理方法,如果沒有則添加如下代碼:
-?(BOOL)application: (UIApplication?*)application??handleOpenURL: (NSURL?*)url
{
? ??return?[ShareSDK handleOpenURL:url
? ?? ?? ?? ?? ?? ?? ?? ?? ? wxDelegate:self;
}

-
?(BOOL)application: (UIApplication?*)application
? ?? ?? ?? ?? ? openURL: (NSURL?*)url
? ?? ?? ?? ?? ? sourceApplication: (NSString?*)sourceApplication
? ?? ?? ?? ?? ? annotation: (id)annotation
{
? ??return?[ShareSDK handleOpenURL:?url
? ?? ?? ?? ?? ?? ? sourceApplication:sourceApplication
? ?? ?? ?? ?? ?? ? annotation:?annotation
? ?? ?? ?? ?? ?? ? wxDelegate:?self;
}? ??
第三步:?加入QQ空間初始化方法
? ?在*AppDelegate.m里面的
-?(BOOL)application: (UIApplication?*)application didFinishLaunchingWithOptions: (NSDictionary?*)launchOptions{}方法中
//初始化我們的sdk

[ShareSDK?registerApp@"iosv1101"];
//添加QQ空間應用
[ShareSDK connectQZoneWithAppKey:@"100371282"
? ?? ?? ?? ?? ?? ?? ?? ?? ? appSecret:@"aed9b0303e3ed1e27bae87c33761161d"
? ?? ?? ?? ?? ?? ? qqApiInterfaceCls:[QQApiInterface class]
? ?? ?? ?? ?? ?? ?? ?tencentOAuthCls:[TencentOAuth class;

注意:這里需要填入的AppKey就是您在QQ互聯注冊應用的AppID,appSecret就是AppKey!

第四步:配置QQ空間的URL Schemes

? ? 打開*-Info.plist(*代表你的工程名字)。找到URL types配置項(如果沒有則新增),展開URL types – URL Schemes,在URL Schemes下分別各新增一項用于QQ空間的Scheme(如果不添加則會導致法返回應用)。其填寫格式為:tencent+appID(你在QQ空間中申請的AppId), 如:tencent100371282。

第五步:授權登錄并獲取用戶信息

? ? 在您的點擊事件方法中加入授權獲取用戶信息接口:

[ShareSDK getUserInfoWithType:ShareTypeQQSpace
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ? authOptions:nil
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?result:^(BOOL?result, id<ISSPlatformUser> userInfo, id<ICMErrorInfo> error)?{
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??if?(result)
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??
{? ?? ?? ?? ?? ?? ?
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?//打印輸出用戶uid:? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?

? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ???NSLog(@"uid = %@",[userInfo uid]);
? ?? ?? ?? ?? ?? ?? ?? ?? ???//打印輸出用戶昵稱:
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ???NSLog(@"name = %@",[userInfo nickname]);
? ?? ?? ?? ?? ?? ?? ?? ?? ? //打印輸出用戶頭像地址:
? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ???NSLog(@"icon = %@",[userInfo profileImage]);

}else{


? ???NSLog(@"授權失敗!error code == %d, error code == %@", [error errorCode], [error errorDescription]);
??

}];
注意:ShareTypeQQSpace這里一定是寫QQSpace不能寫QQ否則會報 不支持授權功能的錯誤。
? ?? ?? ???這里只在result里面做了輸出的操作 如果您想要做存儲數據或者其它顯示都可以在這里面操作!





轉載于:https://www.cnblogs.com/iOS-mt/p/4319851.html

總結

以上是生活随笔為你收集整理的[iOS常见问题] 关于使用QQ做第三方登录的问题!的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。