首先导入第三方的jar包

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.READ_LOGS"tools:ignore="ProtectedPermissions"/>
<uses-permission android:name="android.permission.CALL_PHONE"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.GET_TASKS"/>

配置第三方的你的应用注册的Key,替换Value,配置自定的Appliaction中的KeyID要和和清单文件的AuthActivity下的scheme="tencent???"保持一致

       <meta-dataandroid:name="UMENG_APPKEY"android:value="573f0e9267e58e8e48001545"></meta-data><!-- 第三方配置的Activity信息--><activityandroid:name="com.umeng.qq.tencent.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="tencent1106036236"/></intent-filter></activity><activityandroid:name="com.umeng.qq.tencent.AssistActivity"android:configChanges="orientation|keyboardHidden|screenSize"android:screenOrientation="portrait"android:theme="@android:style/Theme.Translucent.NoTitleBar"/></application>

复制所需要的第三方的资源

创建自定义Application初始化第三方的SDK
(注意:PlatformConfig.setQQZone中的账号和Key值需要注册这里用的是 腾讯开放平台)

  public class MyApp extends Application {@Overridepublic void onCreate() {super.onCreate();//初始化UmengUMShareAPI.get(this);}{PlatformConfig.setQQZone("666666666","kdlajldjlajwdljklajljkwa");}}

MainActivity中的代码

 private ImageView iv_login;private TextView tv_result;//A.定义装平台的容器public ArrayList<SnsPlatform> platforms = new ArrayList<SnsPlatform>();private SHARE_MEDIA[] list = {SHARE_MEDIA.QQ, SHARE_MEDIA.QZONE};private UMShareAPI mUMShareAPI;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);iv_login = (ImageView) findViewById(R.id.iv_login);tv_result = (TextView) findViewById(R.id.tv_result);//A.三方平台,添加到遍历的集合中initPlatforms();//A.获取UM的对象mUMShareAPI = UMShareAPI.get(MainActivity.this);//A.获取是否授权final boolean isauth = UMShareAPI.get(this).isAuthorize(this, platforms.get(0).mPlatform);//A.点击QQ的头像,进行授权iv_login.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {if (isauth){Toast.makeText(MainActivity.this, "授权成功", Toast.LENGTH_SHORT).show();mUMShareAPI.deleteOauth(MainActivity.this, platforms.get(0).mPlatform,authListener);}else{mUMShareAPI.doOauthVerify(MainActivity.this, platforms.get(0).mPlatform,authListener);}mUMShareAPI.getPlatformInfo(MainActivity.this, platforms.get(0).mPlatform,authListener);}});//B.分享的逻辑代码ImageView iv_share = (ImageView) findViewById(R.id.iv_share);final UMImage image = new UMImage(MainActivity.this, "http://b.hiphotos.baidu.com/zhidao/pic/item/63d9f2d3572c11df28e42e30602762d0f703c2e8.jpg");//网络图片final UMImage imagelocal = new UMImage(this, R.mipmap.ic_launcher);imagelocal.setThumb(new UMImage(this, R.mipmap.ic_launcher));imagelocal.setTitle("易宸锋好帅");iv_share.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {new ShareAction(MainActivity.this).withMedia(image).setPlatform(platforms.get(0).mPlatform).setCallback(shareListener).share();new ShareAction(MainActivity.this).setPlatform(SHARE_MEDIA.QQ).withText("hello").setCallback(shareListener).share();}});}//A.private void initPlatforms() {//A.集合清空platforms.clear();//A.通过for循环,把数组数据添加到集合中for (SHARE_MEDIA e : list) {if (!e.toString().equals(SHARE_MEDIA.GENERIC.toString())) {platforms.add(e.toSnsPlatform());}}}//A.UMAuthListener authListener = new UMAuthListener() {@Overridepublic void onStart(SHARE_MEDIA platform) {//授权开始的回调,可以用来处理等待框,或相关的文字提示}@Override//授权成功时回调public void onComplete(SHARE_MEDIA platform, int action, Map<String, String> data) {//获取用户授权后的信息Set<String> strings = data.keySet();data.get("profile_image_url");String temp="";for(String key: strings ){temp =temp +key +" :" +data.get(key) +"\n";}tv_result.setText(temp);}@Overridepublic void onError(SHARE_MEDIA platform, int action, Throwable t) {Toast.makeText(MainActivity.this, "失败:" + t.getMessage(), Toast.LENGTH_LONG).show();}@Overridepublic void onCancel(SHARE_MEDIA platform, int action) {Toast.makeText(MainActivity.this, "取消了", Toast.LENGTH_LONG).show();}};//A.@Overrideprotected void onActivityResult ( int requestCode, int resultCode, Intent data){super.onActivityResult(requestCode, resultCode, data);UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);}//B.分享的逻辑代码private UMShareListener shareListener = new UMShareListener() {@Overridepublic void onStart(SHARE_MEDIA platform) {}@Overridepublic void onResult(SHARE_MEDIA platform) {Toast.makeText(MainActivity.this, "成功了", Toast.LENGTH_LONG).show();}@Overridepublic void onError(SHARE_MEDIA platform, Throwable t) {Toast.makeText(MainActivity.this, "失败" + t.getMessage(), Toast.LENGTH_LONG).show();}@Overridepublic void onCancel(SHARE_MEDIA platform) {Toast.makeText(MainActivity.this, "取消了", Toast.LENGTH_LONG).show();}};
}

第三方QQ登录和分享相关推荐

  1. android qq第三方登录,Android调用第三方QQ登录代码分享

    本文为大家分享了调用QQ登录的相关代码,希望对大家有帮助,减少项目开发的时间,具体内容如下 1.去QQ开放平台注册帐号(http://open.qq.com/),为应用申请QQ的APP_ID , 并下 ...

  2. Android第三方QQ登录、获取个人信息、分享实现

    昨天调试了一下午终于成功 第三方QQ登录.获取个人信息,分享 QQ官方API文档写的太乱 并且很多地方没有更新 这里总结一下 方便记录和回看 实现结果图 首先进入腾讯开放平台 下载QQ的SDK 地址 ...

  3. 【Android应用开发详解】第01期:第三方授权认证(一)实现第三方授权登录、分享以及获取用户资料

    转载请注明出处:http://blog.csdn.net/yangyu20121224/article/details/9057257 由于公司项目的需要,要实现在项目中使用第三方授权登录以及分享文字 ...

  4. Android接入第三方QQ登录

    Android接入第三方QQ登录 前言 开始接入 1. 添加依赖 2.AndroidManifest.xml配置 3.初始化SDK 4.创建实例 5.实现回调 6. 调用QQ登录接口 7.获取用户信息 ...

  5. 关于Android如何集成QQ登录及分享

    首先去友盟进行下载压缩包 然后使用友盟集成工具 将umeng_integratetool_result里的东西拷贝到工程中 新建一个app继承Application,去清单文件里面注册 在oncrea ...

  6. SpringBoot+Vue实现第三方QQ登录(一)

    1. QQ登录介绍(测试网站:地址) QQ互联开放平台为第三方网站提供了丰富的API(官网地址: QQ互联官网首页).第三方网站接入QQ互联开放平台后,即可通过调用平台提供的API实现用户使用QQ帐号 ...

  7. android第三方QQ登录授权

    项目中经常用到第三方登录,今天分享下如何用QQ登录 前面的准备工作就不说了,首先下载QQ登录的jar包,这个是腾讯开放平台可以去下载http://wiki.open.qq.com/wiki/mobil ...

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

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

  9. SpringBoot实现第三方QQ登录

    SpringBoot实现第三方qq登录Demo 1,首先进入qq互联中应用管理去审核信息得到appID和appKEY 审核填写信息后: 等通过找到id 和key参数. 2,贴代码解释: (1)pom文 ...

最新文章

  1. 三维点云分割综述(上)
  2. python能开发手机程序吗_python能否开发安卓应用app?当然可以,python助你轻松搞定...
  3. JAVA标识符中含小数点可以吗_数值类型小数点后是否可以接零问题
  4. LINUX下载编译wabt(反编译wasm)
  5. 直播视频网站源码,延迟的几种方式
  6. CANFD MCP2517FD 滤波ID设置例子
  7. IDEA插件修改class文件
  8. 最全面的Android混淆
  9. 什么是TrustedInstaller管理权限?
  10. Linux查看公网IP和私网(内网)IP的方法
  11. 对堆区、栈区、全局静态区的理解
  12. 电脑c盘垃圾文件太多怎么办?这几个文件夹可以放心删
  13. 【ARMv8基础篇】NIC-400控制器简介
  14. async的waterfall
  15. 微信视频号封面怎么设置?怎么改?封面制作全教程,快来解锁!
  16. 国内五大抗DDoS服务
  17. PDN连接与默认 APN
  18. 在Elasticsearch使用URI花式搜索
  19. php实现腾讯云视频加密
  20. 步道乐跑怎么刷公里_步道乐跑怎么刷?

热门文章

  1. 线性代数(6): 初等矩阵和矩阵的可逆性
  2. 微信小程序:物流运费计算模块(云开发)
  3. 一键修复PS 2021扩展插件图标不显示的问题
  4. 微信小程序3D轮播图
  5. echarts自定义地图(想怎么画就怎么画)
  6. 点亮自然光线,享受更健康的照明,TaoTronics TT-DL16护眼台灯体验
  7. Mysql数据库的字段类型:
  8. 快来试试一行java程序看cpu核心数
  9. 重温2021,回顾三星显示器的几大出彩瞬间
  10. 蓝牙耳机品牌性价比排行,2023年性价比高的蓝牙耳机