当前位置:
首页 >
AndroidApp实现微信登录
发布时间:2024/5/8
71
豆豆
生活随笔
收集整理的这篇文章主要介绍了
AndroidApp实现微信登录
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
近期项目需要用到微信登录,在此记录一下吧
首先需要在微信开放平台上申请appid和appSecret,然后打开我们的安卓项目
第一步:在Android App Gradle中添加依赖
implementation 'com.tencent.mm.opensdk:wechat-sdk-android-without-mta:+'
第二步:创建WXEntryActivity 类
WXEntryActivity extends Activity implements IWXAPIEventHandler重写继承的接口的方法
第三步:注册到微信
要使你的程序启动后微信终端能响应你的程序,必须在代码中向微信终端注册你的 id。
我这边放在微信登录按钮所在页面的onCreate()页面中,代码:
api = WXAPIFactory.createWXAPI(this, AppConstants.WX_APPID, true); api.registerApp(AppConstants.WX_APPID);第四步:然后添加微信登录按钮的响应事件:
if (!api.isWXAppInstalled()) {ToastUtils.showShort("您的设备未安装微信客户端"); } else {final SendAuth.Req req = new SendAuth.Req();req.scope = "snsapi_userinfo";req.state = "wechat_sdk_demo_test";api.sendReq(req); }第五步:接下来app会向微信请求,然后微信会返回信息到我们之前创建的WXEntryActivity类中,这边我们重写下WXEntryActivity的回调方法
在onCreate()中重新获取下wxapi
iwxapi = WXAPIFactory.createWXAPI(this, AppConstants.WX_APPID, false); iwxapi.handleIntent(getIntent(), this);重写onResp代码如下:
//请求回调的处理 @Override public void onResp(BaseResp baseResp) {Log.e(TAG, "onResp: " + baseResp.errCode);//登录回调switch (baseResp.errCode) {case BaseResp.ErrCode.ERR_OK:String code = ((SendAuth.Resp) baseResp).code;Log.e(TAG, "onResp: "+code);//使用code请求服务器,获取accesstokenbreak;case BaseResp.ErrCode.ERR_AUTH_DENIED://用户拒绝授权ToastUtils.showShort("用户拒绝了此次授权");break;case BaseResp.ErrCode.ERR_USER_CANCEL://用户取消ToastUtils.showShort("用户取消了登录");break;default:finish();break;} }好了,用回调拿到的code去请求app后台接口,post到微信服务器拉取用户信息吧,然后返回给app用户数据即可
总结
以上是生活随笔为你收集整理的AndroidApp实现微信登录的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 云帆显示服务器列表获取失败,云帆.apk
- 下一篇: android 蓝牙传输图片吗,如何使用