Android 实现qq第三方登录并获取qq基本信息

##实现步骤
###①导入所需jar包
下载地址:
http://download.csdn.net/detail/zhengyikuangge/9688350


###②配置AndroidMainfest.xml

<!-- 添加权限 -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

<!-- 添加几个activity,照样复制即可 -->

<activity
            android:name="com.tencent.connect.common.AssistActivity"
            android:configChanges="orientation|keyboardHidden"
            android:screenOrientation="portrait"
            android:theme="@android:style/Theme.Translucent.NoTitleBar" />
<activity android:name=".ReturnActivity">
        </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="tencent222222" />
 				<!-- 默认测试id -->
            </intent-filter>
</activity>

###③java代码

//所需两个对象
private Tencent mTencent; // qq主操作对象
private IUiListener iuilisten;//qq事件对象

// 初始化qq主操作对象 腾讯提供测试id 222222
mTencent = Tencent.createInstance("222222", getApplicationContext());

//执行登录操作,使用的时候需要建一个点击监听事件,点击后执行下段代码即可
iuilisten = new IUiListener() {

			@Override
			public void onCancel() {

			}

			public void onComplete(Object response) {

				if (null == response) {
					System.out.println("返回为空登录失败");
					return;
				}
				JSONObject jsonResponse = (JSONObject) response;
				if (null != jsonResponse && jsonResponse.length() == 0) {
					System.out.println("返回为空登录失败");
					return;
				}
				System.out.println("登录成功:=" + response);
			}

			@Override
			public void onError(UiError arg0) {

			}
		};
		// 开始qq授权登录
		// 要所有权限
		mTencent.login(MainActivity.this, "all", iuilisten);

//获取登录后的qq信息
UserInfo userInfo = new UserInfo(MainActivity.this,
				mTencent.getQQToken());
		IUiListener userInfoListener = new IUiListener() {

			@Override
			public void onError(UiError arg0) {
				// TODO 自动生成的方法存根

			}

			@Override
			public void onComplete(final Object arg0) {
				// TODO 自动生成的方法存根
				//获取的信息如下:
				
                /*{"ret":0,"msg":"",
                "is_lost":0,
                "nickname":"(旧)正义狂哥",
                "gender":"男",
                "province":"山东",
                "city":"潍坊",
                "figureurl":"http:\/\/qzapp.qlogo.cn\/qzapp\/222222\/1B3AB0DB9926950AB08F98472FF60D2F\/30",
                "figureurl_1":"http:\/\/qzapp.qlogo.cn\/qzapp\/222222\/1B3AB0DB9926950AB08F98472FF60D2F\/50",
                "figureurl_2":"http:\/\/qzapp.qlogo.cn\/qzapp\/222222\/1B3AB0DB9926950AB08F98472FF60D2F\/100",
                "figureurl_qq_1":"http:\/\/q.qlogo.cn\/qqapp\/222222\/1B3AB0DB9926950AB08F98472FF60D2F\/40",
                "figureurl_qq_2":"http:\/\/q.qlogo.cn\/qqapp\/222222\/1B3AB0DB9926950AB08F98472FF60D2F\/100",
                "is_yellow_vip":"0",
                "vip":"0",   "yellow_vip_level":"0",  
                "level":"0","is_yellow_year_vip":"0"}
                */
                //获取信息的格式可以转化为json格式,然后再获取
                //头像地址一般使用figureurl_qq_2即可
                //如何获取网络图片地址请参考另一个博客
                //http://blog.csdn.net/zhengyikuangge/article/details/53150170
                
				}

			}

			@Override
			public void onCancel() {
				// TODO 自动生成的方法存根

			}
		};
		userInfo.getUserInfo(userInfoListener);
	}

参考demo:https://download.csdn.net/download/zhengyikuangge/9520560

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值