一、首先需要在官网上面注册开发者账号:https://connect.qq.com/index.html
二、创建应用,这里有一个需要注意的东西,创建应用是需要一个应用名称,应该是应用名称被别人用过了,所以申请创建应用的时候一直审核不通过。
三、拿到应用的AppId就可以进行开发。
四、导入两个jar包
五、配置Android项目清单
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.QQLoginDemo">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- QQ三方登录 -->
<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" />
<!--注意需要替换你的app对于的id-->
<data android:scheme="tencent101993050" />
</intent-filter>
</activity>
<!-- QQ分享配置 -->
<activity
android:name="com.tencent.connect.common.AssistActivity"
android:screenOrientation="behind"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:configChanges="orientation|keyboardHidden" />
</application>
六、在Activity的oncreate()方法初始化SDK
七、添加按钮点击事件
public void login(){
if (!mTencent.isSessionValid()){
mTencent.login(MainActivity.this, "all", new IUiListener() {
@Override
public void onComplete(Object o) {
Log.d("data:",o.toString());
data.setText(o.toString());
UserInfo info = new UserInfo(MainActivity.this,Tencent.createInstance("101993050", getApplicationContext()).getQQToken());
info.getUserInfo(new IUiListener() {
@Override
public void onComplete(Object o) {
Log.d("info:",o.toString());
}
@Override
public void onError(UiError uiError) {
}
@Override
public void onCancel() {
}
});
}
@Override
public void onError(UiError uiError) {
}
@Override
public void onCancel() {
}
});
}
}
终:到这里已经可以使用QQ授权登录获取用户的详细信息了。
还有一点注意的点:官方的文档只有一个jar包,用那个jar包做开发的话是有问题的,这时需要导入上图的两个jar包;找不到上述包可私聊,我发你。