来看看效果图吧

实现QQ登录了,

新建一个项目工程 ,然后把我们刚才下载的SDK解压将jar文件夹中的jar包拷贝到我们的项目libs中

导入一个下面架包就可以

项目结构如下

打开我们的清单文件Androidmanifest 在里面加入权限和注册Activity 如下

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/AppTheme">

android:name="com.tencent.tauth.AuthActivity"

android:launchMode="singleTask"

android:noHistory="true" >

android:theme="@android:style/Theme.Translucent.NoTitleBar"

android:screenOrientation="portrait"/>

布局文件activity_main 就一个Button按钮

xmlns:tools="http://schemas.android.com/tools"

android:id="@+id/activity_main"

android:layout_width="match_parent"

android:layout_height="match_parent"

>

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:text="点击QQ登录"

android:onClick="buttonLogin"

android:layout_centerInParent="true"

android:textSize="16sp"

android:textColor="#f4736e"/>

下面就是我们的MainActivity中的代码了

import android.content.Intent;

import android.os.Bundle;

import android.support.v7.app.AppCompatActivity;

import android.util.Log;

import android.view.View;

import android.widget.Toast;

import com.tencent.connect.UserInfo;

import com.tencent.connect.auth.QQToken;

import com.tencent.connect.common.Constants;

import com.tencent.tauth.IUiListener;

import com.tencent.tauth.Tencent;

import com.tencent.tauth.UiError;

import org.json.JSONException;

import org.json.JSONObject;

public class MainActivity extends AppCompatActivity {

private static final String TAG = "MainActivity";

private static final String APP_ID = "1105602574";//官方获取的APPID

private Tencent mTencent;

private BaseUiListener mIUiListener;

private UserInfo mUserInfo;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

//传入参数APPID和全局Context上下文

mTencent = Tencent.createInstance(APP_ID,MainActivity.this.getApplicationContext());

}

public void buttonLogin(View v){

/**通过这句代码,SDK实现了QQ的登录,这个方法有三个参数,第一个参数是context上下文,第二个参数SCOPO 是一个String类型的字符串,表示一些权限

官方文档中的说明:应用需要获得哪些API的权限,由“,”分隔。例如:SCOPE = “get_user_info,add_t”;所有权限用“all”

第三个参数,是一个事件监听器,IUiListener接口的实例,这里用的是该接口的实现类 */

mIUiListener = new BaseUiListener();

//all表示获取所有权限

mTencent.login(MainActivity.this,"all", mIUiListener);

}

/**

* 自定义监听器实现IUiListener接口后,需要实现的3个方法

* onComplete完成 onError错误 onCancel取消

*/

private class BaseUiListener implements IUiListener {

@Override

public void onComplete(Object response) {

Toast.makeText(MainActivity.this, "授权成功", Toast.LENGTH_SHORT).show();

Log.e(TAG, "response:" + response);

JSONObject obj = (JSONObject) response;

try {

String openID = obj.getString("openid");

String accessToken = obj.getString("access_token");

String expires = obj.getString("expires_in");

mTencent.setOpenId(openID);

mTencent.setAccessToken(accessToken,expires);

QQToken qqToken = mTencent.getQQToken();

mUserInfo = new UserInfo(getApplicationContext(),qqToken);

mUserInfo.getUserInfo(new IUiListener() {

@Override

public void onComplete(Object response) {

Log.e(TAG,"登录成功"+response.toString());

}

@Override

public void onError(UiError uiError) {

Log.e(TAG,"登录失败"+uiError.toString());

}

@Override

public void onCancel() {

Log.e(TAG,"登录取消");

}

});

} catch (JSONException e) {

e.printStackTrace();

}

}

@Override

public void onError(UiError uiError) {

Toast.makeText(MainActivity.this, "授权失败", Toast.LENGTH_SHORT).show();

}

@Override

public void onCancel() {

Toast.makeText(MainActivity.this, "授权取消", Toast.LENGTH_SHORT).show();

}

}

/**

* 在调用Login的Activity或者Fragment中重写onActivityResult方法

* @param requestCode

* @param resultCode

* @param data

*/

@Override

protected void onActivityResult(int requestCode, int resultCode, Intent data) {

if(requestCode == Constants.REQUEST_LOGIN){

Tencent.onActivityResultData(requestCode,resultCode,data,mIUiListener);

}

super.onActivityResult(requestCode, resultCode, data);

}

}

总结

以上所述是小编给大家介绍的Android Studio实现第三方QQ登录操作代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

android qq第三方登录 实现,Android Studio实现第三方QQ登录操作代码相关推荐

  1. android登录操作代码,Android Studio实现第三方QQ登录操作代码

    来看看效果图吧 实现QQ登录了, 新建一个项目工程 ,然后把我们刚才下载的SDK解压将jar文件夹中的jar包拷贝到我们的项目libs中 导入一个下面架包就可以 项目结构如下 打开我们的清单文件And ...

  2. 实现QQ、微信、新浪微博和百度第三方登录(Android Studio)

    实现QQ.微信.新浪微博和百度第三方登录(Android Studio) 前言: 对于大多数的APP都有第三方登录这个功能,自己也做过几次,最近又有一个新项目用到了第三方登录,所以特意总结了一下关于第 ...

  3. Android-使用Android Studio实现第三方QQ登录

    现在的第三方登录很普遍如QQ,微博,微信,今天我们就来实现如何接入QQ登录到我们的项目中 要想使用QQ登录我们需要到腾讯开放平台注册账号获取开发者资格地址:(http://open.qq.com) 注 ...

  4. Android 实现QQ、微信、新浪微博和百度第三方登录

    前言:  对于大多数的APP都有第三方登录这个功能,自己也做过几次,最近又有一个新项目用到了第三方登录,所以特意总结了一下关于第三方登录的实现,并拿出来与大家一同分享: 各大开放平台注册账户获取App ...

  5. 简单步骤,使用 Android studio 实现保存 QQ 账号密码,和简易 QQ 用户登录界面

    利用 Android studio 2021 软件输出一个简易用户登录界面,拥有头像并且能够实现对自行输入的账号密码进行保存,文件名为 saveqq,功能实现对账号与密码的输入和存储,简单QQ界面布局 ...

  6. android实现qq登录功能,Android 实现QQ第三方登录

    陆续整理一下 QQ.新浪,以及微信 登录和分享功能. 步骤: 1 下载官方sdk 2. 根据官网文档及Demo测试. 3.集成到自己应用上. 首先下载下来,导入到我们的开发工具中,看下具体工程. 所谓 ...

  7. Android 项目必备(三十七)-->使用友盟集成 QQ、微信、微博等第三方分享与登录

    文章目录 效果图 实战 最近项目需要加入第三方分享和登录功能,之前其他项目的第三方分享和登录一直都使用ShareSDK实现的.为了统一使用友盟的全家桶,所以三方分享和登录也就选择了友盟. 效果图 实战 ...

  8. android servlet 登陆,Android Studio+Servlet+MySql实现登录注册

    一.Android 项目当中设置明文传输 1.设置明文传输的xml 2.引入上述创建的xml android:networkSecurityConfig="@xml/network_secu ...

  9. Android Studio导入第三方类库的方法

     Android Studio导入第三方类库的方法 本人也刚刚开始尝试做android app的开发,听说android studio是Google支持的android 应用开发工具,所以想应该肯 ...

  10. android studio 导入第三方库的记录

    android studio 导入第三方库的记录.jar包 和 库 一.jar包 1.jar包的话很简单,首先换成project模式,将你要用的jar包复制到lib下面.如图 2.然后右键选择Add ...

最新文章

  1. 【关注】3000多警力围剿“毒村”!现实比影视剧更惊险
  2. 【iCore3 双核心板】例程二十一:LAN_TCPS实验——以太网数据传输
  3. docker build 指定dockerfile
  4. 百度商品识别心得笔记
  5. Centos设置静态IP及修改Centos配置文件
  6. 如何进行高效JavaScript单元测试
  7. [多图/秒懂]白话OpenPose,最受欢迎的姿态估计网络
  8. python docx包_[Python02] Python-docx包的使用,快速处理 Word 文件!
  9. 【新用户专享】腾讯云发车,360元三年1核2G云服务器
  10. android中的websocket 应用
  11. Istio 核心组件介绍
  12. iOS弹幕库OCBarrage-如何hold住每秒5000条巨量弹幕
  13. 研磨设计模式之《模板方法模式template method》
  14. matlab导出prn文件怎么打开,prn文件介绍及打印方法
  15. 九宫格拼图小游戏代码html,js实现九宫格拼图小游戏.pdf
  16. 测试简单读取opml
  17. 最重要的三种能力:思考力、行动力、表达力
  18. 鸿蒙系统1004无标题,win10 10041更新提示错误怎么处理
  19. java flightrecorder_java 11 Java Flight Recorder
  20. Angular 个人深究(一)【Angular中的Typescript 装饰器】

热门文章

  1. 第 1 课:KNX 与 Arduino:硬件连接
  2. knx智能照明控制系统电路图_KNX智能控制系统(20100928)解析
  3. 双面打印无效选择了文件服务器,记得要收藏!如何手动完成双面打印文档
  4. python爬取西刺网代理IP地址
  5. 《Java疯狂讲义》重点及相关信息 第一章
  6. 正点原子STM32F103 DMA代码例程魔改
  7. 如何固定电脑桌面便签 win7便签怎么设置?
  8. Spyder汉化(python汉化)
  9. 谷歌浏览器32位安装包_谷歌团队新作!只需下载3M安装包,就能让你的手机浏览器跟踪眼球运动...
  10. xmind 免费模板链接