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

歡迎訪問 生活随笔!

生活随笔

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

Android

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

發布時間:2025/4/17 Android 77 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android apk 微信登入_Android集成第三方微信登录 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

public classWXEntryActivity extends Activity implements IWXAPIEventHandler {privateIWXAPI api;private BaseResp resp = null;private String WX_APP_ID = "創建應用后得到的APP_ID";//獲取第一步的code后,請求以下鏈接獲取access_token

private String GetCodeRequest = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code";//獲取用戶個人信息

private String GetUserInfo = "https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID";private String WX_APP_SECRET = "創建應用后得到的APP_SECRET";

@Overrideprotected voidonCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

api= WXAPIFactory.createWXAPI(this, WX_APP_ID, false);

api.handleIntent(getIntent(),this);

}//微信發送請求到第三方應用時,會回調到該方法

@Overridepublic voidonReq(BaseReq req) {

finish();

}//第三方應用發送到微信的請求處理后的響應結果,會回調到該方法

@Overridepublic voidonResp(BaseResp resp) {

String result= "";if (resp != null) {

resp=resp;

}switch(resp.errCode) {caseBaseResp.ErrCode.ERR_OK:

result= "發送成功";

Toast.makeText(this, result, Toast.LENGTH_LONG).show();

String code=((SendAuth.Resp) resp).code;/** 將你前面得到的AppID、AppSecret、code,拼接成URL 獲取access_token等等的信息(微信)*/String get_access_token=getCodeRequest(code);

AsyncHttpClient client= newAsyncHttpClient();

client.post(get_access_token,newJsonHttpResponseHandler() {

@Overridepublic void onSuccess(intstatusCode, JSONObject response) {//TODO Auto-generated method stub

super.onSuccess(statusCode, response);try{if (!response.equals("")) {

String access_token=response

.getString("access_token");

String openid= response.getString("openid");

String get_user_info_url=getUserInfo(

access_token, openid);

getUserInfo(get_user_info_url);

}

}catch(Exception e) {//TODO Auto-generated catch block

e.printStackTrace();

}

}

});

finish();break;caseBaseResp.ErrCode.ERR_USER_CANCEL:

result= "發送取消";

Toast.makeText(this, result, Toast.LENGTH_LONG).show();

finish();break;caseBaseResp.ErrCode.ERR_AUTH_DENIED:

result= "發送被拒絕";

Toast.makeText(this, result, Toast.LENGTH_LONG).show();

finish();break;default:

result= "發送返回";

Toast.makeText(this, result, Toast.LENGTH_LONG).show();

finish();break;

}

}/**

* 通過拼接的用戶信息url獲取用戶信息

*

* @param user_info_url*/

private voidgetUserInfo(String user_info_url) {

AsyncHttpClient client= newAsyncHttpClient();

client.get(user_info_url, newJsonHttpResponseHandler() {

@Overridepublic void onSuccess(intstatusCode, JSONObject response) {//TODO Auto-generated method stub

super.onSuccess(statusCode, response);try{

System.out.println("獲取用戶信息:" +response);if (!response.equals("")) {

String openid= response.getString("openid");

String nickname= response.getString("nickname");

String headimgurl= response.getString("headimgurl");

}

}catch(Exception e) {//TODO Auto-generated catch block

e.printStackTrace();

}

}

});

}

@Overrideprotected voidonNewIntent(Intent intent) {

super.onNewIntent(intent);

setIntent(intent);

api.handleIntent(intent,this);

finish();

}/**

* 獲取access_token的URL(微信)

*

* @param code

* 授權時,微信回調給的

* @return URL*/

privateString getCodeRequest(String code) {

String result= null;

GetCodeRequest= GetCodeRequest.replace("APPID",

urlEnodeUTF8(WX_APP_ID));

GetCodeRequest= GetCodeRequest.replace("SECRET",

urlEnodeUTF8(WX_APP_SECRET));

GetCodeRequest= GetCodeRequest.replace("CODE", urlEnodeUTF8(code));

result=GetCodeRequest;returnresult;

}/**

* 獲取用戶個人信息的URL(微信)

*

* @param access_token

* 獲取access_token時給的

* @param openid

* 獲取access_token時給的

* @return URL*/

privateString getUserInfo(String access_token, String openid) {

String result= null;

GetUserInfo= GetUserInfo.replace("ACCESS_TOKEN",

urlEnodeUTF8(access_token));

GetUserInfo= GetUserInfo.replace("OPENID", urlEnodeUTF8(openid));

result=GetUserInfo;returnresult;

}privateString urlEnodeUTF8(String str) {

String result=str;try{

result= URLEncoder.encode(str, "UTF-8");

}catch(Exception e) {

e.printStackTrace();

}returnresult;

}

}

總結

以上是生活随笔為你收集整理的android apk 微信登入_Android集成第三方微信登录的全部內容,希望文章能夠幫你解決所遇到的問題。

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