android apk 微信登入_微信第三方登录(Android 实现)
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 实现)相关推荐
- 实现QQ、微信、新浪微博和百度第三方登录(Android Studio)
实现QQ.微信.新浪微博和百度第三方登录(Android Studio) 前言: 对于大多数的APP都有第三方登录这个功能,自己也做过几次,最近又有一个新项目用到了第三方登录,所以特意总结了一下关于第 ...
- android apk 微信登入_Android集成第三方微信登录
public classWXEntryActivity extends Activity implements IWXAPIEventHandler {privateIWXAPI api;privat ...
- [Android]-SDK QQ微信登入
在Unity中接入大量SDK,对一个零Android开发基础的人来说还是比较蛋疼的.在网上搜了一大堆资料,总算折腾出一个能用的QQ&微信登入SDK. 在QQ互联和微信开放平台注册,并申请相关权 ...
- 微信小程序之微信登入
以下代码基于uni-app编写 如果没有appid,那么uni-login是受限制的 https://open.weixin.qq.com/ 认证商户() 微信登入 不同的应用对于微信登入会做不同的处 ...
- 4.微信登入小程序与后端实现
微信登入小程序与后端实现 **需求:**实现小程序端实现登入以后,后端实现登入状态 小程序端 app.js App({onLaunch: function () {// 展示本地存储能力001bHJ2 ...
- python代码练习,微信登入并生成头像大图
import itchat import os from math import sqrt from PIL import Image import shutilpwd = os.getcwd() # ...
- 帝国cms插件支持7.0/7.2 7.5/UTF-8 微信登入插件 一键登入
简介: 这款微信登入插件,快快拿去用吧,非常方便,傻瓜式设置. 安装非常简单!新手也能懂! 网盘下载地址: http://kekewangLuo.cc/okQMSxm8a8m0 图片: 安装使用方法: ...
- 如何微信链接自定义_微信链接自定义
微信在分享第三方网站是不显示缩略图和描述的,如下图所示 微信链接自定义_微信链接自定义 要解决这个问题必须调用微信JS-SDK接口,下面讲一下如何调用接口. 第一部分 准备步骤 注册微信公众号. 通过 ...
- 【第三方互联】16、微信(wechat)授权第三方登录
第三方平台系列文章,今天终于又开始更新了,今天继续学习微信(wechat)授权第三方登录 一.准备工作 1.申请微信公众测试号 由于我们是个人开发者,我们需要去注册申请一个微信公众平台的测试号 htt ...
最新文章
- rownum 的一点儿研究
- 《Python 3程序开发指南(第2版•修订版)》——1.2 Python的关键要素
- linux mamp 设备内存
- 这是一个神奇的文字转语音软件
- kodi android设置中文,Kodi(原XBMC)
- 目前我们再用的即时通讯软件
- 软件开发技术文档_你知道,直播软件开发需要做的准备工作有哪些?
- python moviepy 音量_python moviepy 视频剪辑代码
- 谁说大龄程序员不能学 Java?
- django基础篇01-环境的搭建和项目的创建
- python保存后不运行_Python后台执行不启用缓存
- 2017-10-26 消息队列设计
- 机器学习6:——Pandas——6:高级处理3:数据合并
- python列表增加行_openpyxl追加行、指定位置插入行
- ISA SERVER常见问题总结专用贴(转)
- Google搜索设置在新标签页打开的方法
- MATLAB显函数作图 参数方程作图 极坐标方程作图绘图实例 用 Matlab 绘制高颜值函数图像 放大看告别浓浓锯齿风
- 海外调查问卷渠道平台
- nodejs爬虫大作业项目
- oracle安装停在2%,青苹果还原win7系统安装oracle11g停在了2%的具体步骤
热门文章
- 几何分布的概率和期望
- 幸福的烦恼:显卡算力太高而pytorch版本太低不支持
- 【循环搜寻法(使用卫兵)】
- ibatis中iterate的用法(conjunction=or ,) .
- 招聘:JAVA软件开发工程师
- 代码坏的味道13:夸夸其谈未来性(Speculative Generality)
- log4j2.xsml配置文件详细
- 用数组统计学生各个分数段成绩的人数
- ubuntu 命令卡住_安装Win10和Ubuntu双系统
- 制作一个浪漫温馨的生日礼物送她~html+css+javascript蓝色梦幻海洋3D相册(含音乐)