1.开发准备工作

1.参考Android 接入指南

1.申请你的AppID

2.下载微信终端开发工具包

根据app包名生成ap

2.代码实践

1.判定客户端是否装有微信,没有则提醒需要安装微信

private void loginWeixin() {

if (!isAvilable(LoginActivity.this, "com.tencent.mm")) {

DialogHelper.createInfoDialog(LoginActivity.this,

"还未安装微信客户端哟.", null, "知道了", new InfoDialog.IButtonInterface() {

@Override

public void clickSureButton() {

}

@Override

public void clickCannelButton() {

}

});

return;

}

WXEntryActivity.isFirst = false;

showProgressDialogForRequest("正在登录中...");

Intent intent = new Intent(LoginActivity.this,

WXEntryActivity.class);

startActivity(intent);

}

2.AndroidManifest 里面通过meta-data方式 配置appid appkey,这两个值是通过微信开发平台添加应用生成的。代码通过获取metadata获取这两个值。

android:name="weixinappid"

android:value="xxxxxx" />

android:name="weixinappkey"

android:value="xxxxx" />

try {

ApplicationInfo info = context.getPackageManager().getApplicationInfo(context.getPackageName(), PackageManager.GET_META_DATA);

String appidtemp = (String) info.metaData.get("weixinappid");

String appkeytemp = (String) info.metaData.get("weixinappkey");

if (appidtemp != null && !appidtemp.trim().equals("")) {

APP_ID = appidtemp;

}

if (appkeytemp != null && !appkeytemp.trim().equals("")) {

APP_KEY = appkeytemp;

}

} catch (PackageManager.NameNotFoundException e) {

e.printStackTrace();

Toast.makeText(context, "微信APP_ID或APP_KEY配置有问题", Toast.LENGTH_LONG)

.show();

}

3.引入微信登录相关SDK到项目的lib文件夹中,就一个文件:

libammsdk.jar

4.注册app,初始化回调。

private void initWeixinSDK(Activity context) {

api = WXAPIFactory.createWXAPI(context, APP_ID, true);

api.registerApp(APP_ID);

initWeixinIntent(context.getIntent(), WeiXinHelper.this);

}

public void initWeixinIntent(Intent intent,

IWXAPIEventHandler wxapEventHandler) {

if (api != null) {

api.handleIntent(intent, wxapEventHandler);

}

}

5.定义个不显示的activity 进行微信申请用户授权,和接收返回操作。

WXEntryActivity 参考微信开放平台提供的demo

6. 申请用户授权

SendAuth.Req req = new SendAuth.Req();

//授权读取用户信息

req.scope = "snsapi_userinfo";

//自定义信息

req.state = "wechat_sdk_demo_test";

//向微信发送请求

api.sendReq(req);

7.在onResp方法中获取到code,然后通过下面的接口获取到token和openid:

openid可以作为用户的唯一标识,将openid保存下来,就可以实现登录状态的检查了。

8.如果需要获取用户的信息,例如昵称,头像,可以使用下面的接口:

3.参考链接

android apk 微信登入_微信第三方登录(Android 实现)相关推荐

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

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

  2. android apk 微信登入_Android集成第三方微信登录

    public classWXEntryActivity extends Activity implements IWXAPIEventHandler {privateIWXAPI api;privat ...

  3. [Android]-SDK QQ微信登入

    在Unity中接入大量SDK,对一个零Android开发基础的人来说还是比较蛋疼的.在网上搜了一大堆资料,总算折腾出一个能用的QQ&微信登入SDK. 在QQ互联和微信开放平台注册,并申请相关权 ...

  4. 微信小程序之微信登入

    以下代码基于uni-app编写 如果没有appid,那么uni-login是受限制的 https://open.weixin.qq.com/ 认证商户() 微信登入 不同的应用对于微信登入会做不同的处 ...

  5. 4.微信登入小程序与后端实现

    微信登入小程序与后端实现 **需求:**实现小程序端实现登入以后,后端实现登入状态 小程序端 app.js App({onLaunch: function () {// 展示本地存储能力001bHJ2 ...

  6. python代码练习,微信登入并生成头像大图

    import itchat import os from math import sqrt from PIL import Image import shutilpwd = os.getcwd() # ...

  7. 帝国cms插件支持7.0/7.2 7.5/UTF-8 微信登入插件 一键登入

    简介: 这款微信登入插件,快快拿去用吧,非常方便,傻瓜式设置. 安装非常简单!新手也能懂! 网盘下载地址: http://kekewangLuo.cc/okQMSxm8a8m0 图片: 安装使用方法: ...

  8. 如何微信链接自定义_微信链接自定义

    微信在分享第三方网站是不显示缩略图和描述的,如下图所示 微信链接自定义_微信链接自定义 要解决这个问题必须调用微信JS-SDK接口,下面讲一下如何调用接口. 第一部分 准备步骤 注册微信公众号. 通过 ...

  9. 【第三方互联】16、微信(wechat)授权第三方登录

    第三方平台系列文章,今天终于又开始更新了,今天继续学习微信(wechat)授权第三方登录 一.准备工作 1.申请微信公众测试号 由于我们是个人开发者,我们需要去注册申请一个微信公众平台的测试号 htt ...

最新文章

  1. rownum 的一点儿研究
  2. 《Python 3程序开发指南(第2版•修订版)》——1.2 Python的关键要素
  3. linux mamp 设备内存
  4. 这是一个神奇的文字转语音软件
  5. kodi android设置中文,Kodi(原XBMC)
  6. 目前我们再用的即时通讯软件
  7. 软件开发技术文档_你知道,直播软件开发需要做的准备工作有哪些?
  8. python moviepy 音量_python moviepy 视频剪辑代码
  9. 谁说大龄程序员不能学 Java?
  10. django基础篇01-环境的搭建和项目的创建
  11. python保存后不运行_Python后台执行不启用缓存
  12. 2017-10-26 消息队列设计
  13. 机器学习6:——Pandas——6:高级处理3:数据合并
  14. python列表增加行_openpyxl追加行、指定位置插入行
  15. ISA SERVER常见问题总结专用贴(转)
  16. Google搜索设置在新标签页打开的方法
  17. MATLAB显函数作图 参数方程作图 极坐标方程作图绘图实例 用 Matlab 绘制高颜值函数图像 放大看告别浓浓锯齿风
  18. 海外调查问卷渠道平台
  19. nodejs爬虫大作业项目
  20. oracle安装停在2%,青苹果还原win7系统安装oracle11g停在了2%的具体步骤

热门文章

  1. 几何分布的概率和期望
  2. 幸福的烦恼:显卡算力太高而pytorch版本太低不支持
  3. 【循环搜寻法(使用卫兵)】
  4. ibatis中iterate的用法(conjunction=or ,) .
  5. 招聘:JAVA软件开发工程师
  6. 代码坏的味道13:夸夸其谈未来性(Speculative Generality)
  7. log4j2.xsml配置文件详细
  8. 用数组统计学生各个分数段成绩的人数
  9. ubuntu 命令卡住_安装Win10和Ubuntu双系统
  10. 制作一个浪漫温馨的生日礼物送她~html+css+javascript蓝色梦幻海洋3D相册(含音乐)