日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android制作微信登录功能,Android 实现微信登录详解

發布時間:2024/3/26 Android 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android制作微信登录功能,Android 实现微信登录详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

分享到微信朋友圈的功能早已經有了,但微信登錄推出并不久,文檔寫的也并不是很清楚,這里記錄分享一下。

正文

一、準備

注冊、認證步驟自己來。微信開放平臺:

二、 代碼

2.1?喚起微信登錄

參考官網文檔:資源中心/移動應用開放/接入指南/android接入指南

private iwxapi mweixinapi;

private void loginwithweixin() {

if (mweixinapi == null) {

mweixinapi = wxapifactory.createwxapi(this, weixin_app_id, false);

}

if (!mweixinapi.iswxappinstalled()) {

//提醒用戶沒有按照微信

return;

}

mweixinapi.registerapp(weixin_app_id);

sendauth.req req = new sendauth.req();

req.scope = weixin_scope;

req.state = weixin_state;

mweixinapi.sendreq(req);

}

wexin_scope?:這里填的snsapi_userinfo,用snsapi_base提示沒權限。

weixin_state?:用于保持請求和回調的狀態,授權請求后原樣帶回給第三方。該參數可用于防止csrf攻擊(跨站請求偽造攻擊),建議第三方帶上該參數,可設置為簡單的隨機數加session進行校驗。

不出意外就能喚起微信登錄了。

2.2?接收微信的請求及返回值

在你的包名相應目錄下新建一個wxapi目錄,并在該wxapi目錄下新增一個wxentryactivity類,參考文檔在androidmanifest.xml注冊activity。

public class wxentryactivity extends activity {

@override

protected void oncreate(bundle savedinstancestate) {

super.oncreate(savedinstancestate);

handleintent(getintent());

}

@override

protected void onnewintent(intent intent) {

super.onnewintent(intent);

handleintent(intent);

}

private void handleintent(intent intent) {

sendauth.resp resp = new sendauth.resp(intent.getextras());

if (resp.errcode == baseresp.errcode.err_ok) {

//用戶同意

}

}

}

注意:這里和微信的例子寫的有點不一樣,不過結果是一樣的,這個能取到code等信息,測試返回數據如下:

e/wxentryactivity(14288): oncreate...key:_wxapi_sendauth_resp_state xxx

e/wxentryactivity(14288): oncreate...key:_wxapi_sendauth_resp_token xxxxxxxxxxxxxxxxxxxxxxxxxxxxx

e/wxentryactivity(14288): oncreate...key:_mmessage_apppackage com.tencent.mm

e/wxentryactivity(14288): oncreate...key:_wxapi_baseresp_transaction null

e/wxentryactivity(14288): oncreate...key:_wxapi_sendauth_resp_lang zh_cn

e/wxentryactivity(14288): oncreate...key:_wxapi_command_type 1

e/wxentryactivity(14288): oncreate...key:_mmessage_content null

e/wxentryactivity(14288): oncreate...key:_wxapi_sendauth_resp_country null

e/wxentryactivity(14288): oncreate...key:_mmessage_checksum [b@426358e8

e/wxentryactivity(14288): oncreate...key:wx_token_key com.tencent.mm.openapi.token

e/wxentryactivity(14288): oncreate...key:_wxapi_sendauth_resp_url xxxxxxxxxxx

e/wxentryactivity(14288): oncreate...key:_mmessage_sdkversion 570490883

e/wxentryactivity(14288): oncreate...key:_wxapi_baseresp_errcode 0

e/wxentryactivity(14288): oncreate...key:_wxapi_baseresp_errstr null

e/wxentryactivity(14288): oncreate...key:_wxapi_baseresp_openid null

xxx部分的內容我已經隱掉了,拿到code就能拿到access——token了,后續依據文檔調用即可。

這里你可以把wxentryactivity的theme弄成透明的,然后再彈起來一個progressdialog進行后續的操作(提交你自己的服務器),就能和現有的界面完全融合了。

三、注意:

3.1?獲取簽名必須用release包。(所以你會發現微信、微博sdk取得值是一樣,所以如果已經有了微博的簽名可以直接拷貝到微信使用)

以上對android 微信登錄分享朋友圈的功能,有需要的朋友可以看下。

總結

以上是生活随笔為你收集整理的Android制作微信登录功能,Android 实现微信登录详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。