[Android] 使用腾讯SDK进行SSO登录
来源:互联网 发布:广州增城网络兼职网 编辑:程序博客网 时间:2024/06/14 16:47
1. 简述
腾讯的SDK说明文档很详细了,我仅仅是使用其中的登录部分,所以单独把登录相关的内容拿出来,在这里记录一下。
2. 文档资料(腾讯开放平台)
SDK下载:http://wiki.open.qq.com/wiki/website/SDK%E4%B8%8B%E8%BD%BD
![](file:///C:/Documents%20and%20Settings/Administrator/Local%20Settings/Application%20Data/youdao/ynote/images/ED2C2537C6D24AB7AA46390CFA0093C3/clipboard.png)
当前版本是1.6,这个版本支持QQ客户端和QQ空间客户端的SSO登录。 ![](http://img.blog.csdn.net/20130703095459109?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMTI2NzU0Ng==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
3. Manifest
permission
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
activity
<activity
android:name="com.tencent.tauth.AuthActivity"
android:launchMode="singleTask"
android:noHistory="true" >
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="tencent你的AppId" />
</intent-filter>
</activity>
"tencent你的AppId",这里要注意,在1.4的SDK中是没有tencent的,在1.6中要在appid的前面加上"tencent",不加不会报错,但是进行授权的时候,会有问题,提示当前手机的操作系统不支持QQ的授权。。
4. 调用方法
创建实例
Tencent mTencent = Tencent.createInstance(APP_ID, appContext);
回调函数
IUiListener listener = new IUiListener() {
@Override
public void onCancel() {
// TODO:登录取消的一些处理
}
@Override
public void onComplete(JSONObject object) {
try {
mOpenId = object.getString("openid");
mAccessToken = object.getString("access_token");
mExpiresIn = object.getString("expires_in");
// TODO:登录成功的一些处理
} catch (JSONException e) {
e.printStackTrace();
// TODO:登录失败的一些处理
}
}
@Override
public void onError(UiError error) {
Log.d("ssoLogin", String.format("error code = %s, error detail = %s, error message = %s",
error.errorCode, error.errorDetail, error.errorMessage));
// TODO:登录失败的一些处理
}
};
SSO登录
mTencent.login(activity, SCOPE, listener);
在调用该接口的Activity的onActivityResult中,加入代码,其中request code是5657
mTencent.onActivityResult(requestCode, resultCode, data);
- [Android] 使用腾讯SDK进行SSO登录
- [Android] 使用Google SDK进行SSO登录
- [Android] 使用新浪微博SDK进行SSO登录
- IOS 模拟器使用腾讯 SDK 登录问题
- 友盟 Android SDK v4.0 SSO登录、分享事件
- android qq第三方登录(腾讯sdk)
- Android集成腾讯TIM-SDK登录超时的问题
- Android sdk 更新,使用腾讯服务器
- Android 使用腾讯微博SSO授权基于腾讯demo的修改
- Android 使用HttpGet进行登录
- android 使用腾讯定位服务进行定位
- 腾讯微博 android Oauth2.0 SDK 使用介绍
- Android中使用腾讯微博SDK完成分享音乐
- Android使用腾讯定位SDK显示当前地址
- 使用镜像进行Android SDK安装
- 使用share SDK实现腾讯微博授权登录分享(1.x版本)
- 使用share SDK实现腾讯微博授权登录分享(1.x版本)
- 有奖试读 使用share SDK实现腾讯微博授权登录分享(1.x版本)
- 如何合并多个分支的不稳定模块的代码,展示当前的进展效果?
- Spring 命名空间 p
- 背景透明的ListBox(C#.WinForm)
- 大专-小小心得
- 将NSString字符串转换为NSArray数组,componentsSeparatedByString,将array数组转换为string字符串,componentsJoinedByString
- [Android] 使用腾讯SDK进行SSO登录
- eclips最最常用快捷键
- linux上ln命令详细说明
- [黑马程序员]_构造函数和继承
- 泛型类接口定义
- 解决:动态MMap没有空间的问题
- JPA 、 Hibernate 注解
- 关闭navigator.getUserMedia打开的摄像头
- Java的String.valueOf 转换 与、空串+类型变量转换与封装类(Integer)的toString方式转换比较