From c5bf501d8b507d1e3e79541e7ac9b45910860b4d Mon Sep 17 00:00:00 2001
From: 陈奇 <1650699704@qq.com>
Date: Wed, 29 May 2019 16:17:07 +0800
Subject: [PATCH] 添加新功能
---
app/src/main/java/com/moral/yunfushao/wxapi/WXEntryActivity.java | 82 ++++++++++++++++++++++++++--------------
1 files changed, 53 insertions(+), 29 deletions(-)
diff --git a/app/src/main/java/com/moral/yunfushao/wxapi/WXEntryActivity.java b/app/src/main/java/com/moral/yunfushao/wxapi/WXEntryActivity.java
index 9a863cb..315aa16 100644
--- a/app/src/main/java/com/moral/yunfushao/wxapi/WXEntryActivity.java
+++ b/app/src/main/java/com/moral/yunfushao/wxapi/WXEntryActivity.java
@@ -16,7 +16,6 @@
import com.moral.yunfushao.utils.T;
import com.moral.yunfushao.wxapi.data.AccessTokenBean;
import com.moral.yunfushao.wxapi.data.WXUserBean;
-import com.tencent.mm.opensdk.constants.ConstantsAPI;
import com.tencent.mm.opensdk.modelbase.BaseReq;
import com.tencent.mm.opensdk.modelbase.BaseResp;
import com.tencent.mm.opensdk.modelmsg.SendAuth;
@@ -48,24 +47,23 @@
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
- System.out.println("chenqi onNewIntent");
setIntent(intent);
api.handleIntent(intent, this);
}
@Override
public void onReq(BaseReq baseReq) {
- switch (baseReq.getType()) {
- case ConstantsAPI.COMMAND_GETMESSAGE_FROM_WX:
- goToGetMsg();
- break;
- case ConstantsAPI.COMMAND_SHOWMESSAGE_FROM_WX:
- System.out.println("chenqi create WXEntryActivity COMMAND_SHOWMESSAGE_FROM_WX");
- goToShowMsg((ShowMessageFromWX.Req) baseReq);
- break;
- default:
- break;
- }
+// switch (baseReq.getType()) {
+// case ConstantsAPI.COMMAND_GETMESSAGE_FROM_WX:
+// goToGetMsg();
+// break;
+// case ConstantsAPI.COMMAND_SHOWMESSAGE_FROM_WX:
+// System.out.println("chenqi create WXEntryActivity COMMAND_SHOWMESSAGE_FROM_WX");
+// goToShowMsg((ShowMessageFromWX.Req) baseReq);
+// break;
+// default:
+// break;
+// }
}
@Override
@@ -75,7 +73,7 @@
switch (baseResp.errCode) {
case BaseResp.ErrCode.ERR_OK:
code = ((SendAuth.Resp) baseResp).code;
- result = "������������";
+ result = "";
checkWXLogin();
//������������
break;
@@ -103,6 +101,7 @@
*/
private void checkEffective(final String access_token, String openid) {
String url = "https://api.weixin.qq.com/sns/auth?access_token=" + access_token + "&openid=" + openid;
+ System.out.println("chenqi ---- checkEffective");
WXHttpUtil.doGet(url, CacheMode.DEFAULT, new HttpCallBack() {
@Override
public void onSuccess(String res, String msg) {
@@ -121,13 +120,13 @@
@Override
public void onFail(int errno, String s) {
- T.show("������������");
+ loginFailed();
}
});
}
/**
- * ���������������������������
+ * ������������������������������
*
* @param refresh_tocken
*/
@@ -138,7 +137,7 @@
public void onSuccess(String res, String msg) {
AccessTokenBean accessTokenBean = GsonUtil.toObj(msg, AccessTokenBean.class);
if (accessTokenBean.getErrcode() == 40030) {
- T.show("������������");
+ loginFailed();
} else {
loginSuccess(accessTokenBean.getAccess_token(), accessTokenBean.getOpenid());
}
@@ -151,7 +150,7 @@
@Override
public void onFail(int errno, String s) {
- T.show("������������");
+ loginFailed();
}
});
}
@@ -165,14 +164,20 @@
"&secret=" + WXConstants.SECRET + "&code=" +
WXEntryActivity.code +
"&grant_type=authorization_code";
+ System.out.println("chenqi ---- checkWXLogin");
WXHttpUtil.doGet(url, CacheMode.DEFAULT, new HttpCallBack() {
@Override
public void onSuccess(String res, String msg) {
+ System.out.println("chenqi ---- onSuccess");
AccessTokenBean accessTokenBean = GsonUtil.toObj(msg, AccessTokenBean.class);
+ System.out.println("chenqi ---- refreshToken" + accessTokenBean.getOpenid() + accessTokenBean.getAccess_token());
if (accessTokenBean.getErrcode() == 40029) {
//������������
- T.show("������������");
+ loginFailed();
return;
+ } else if (accessTokenBean.getErrcode() == 40163) {
+ //������������������code ���������������������
+ loginSuccess();
}
if (accessTokenBean.getAccess_token() != null && accessTokenBean.getOpenid() != null) {
checkEffective(accessTokenBean.getAccess_token(), accessTokenBean.getOpenid());
@@ -186,7 +191,7 @@
@Override
public void onFail(int errno, String s) {
- T.show("������������");
+ loginFailed();
}
});
}
@@ -206,11 +211,18 @@
@Override
public void onSuccess(String res, String msg) {
WXUserBean bean = new WXUserBean();
- MainApp.theApp.userId = bean.getNickname();
User user = new User();
- user.set_id(bean.getOpenid());
- user.setNickname(bean.getNickname());
- user.setLogin_type(2);
+ if (bean.getErrcode() == 40003) {
+ MainApp.theApp.userId = "null";
+ user.set_id(bean.getOpenid());
+ user.setNickname(MainApp.theApp.userId);
+ user.setLogin_type(2);
+ } else {
+ MainApp.theApp.userId = bean.getNickname();
+ user.set_id(bean.getOpenid());
+ user.setNickname(bean.getNickname());
+ user.setLogin_type(2);
+ }
MainApp.theApp.sharedPreferencesUtil.saveLoginInfo(user);
}
@@ -221,17 +233,29 @@
@Override
public void onFail(int errno, String s) {
- T.show("������������");
+ loginFailed();
}
});
}
- private void loginSuccess(String... strings) {
- //���������������������
- Intent intent = new Intent(WXEntryActivity.this, MainActivity.class);
- WXEntryActivity.this.startActivity(intent);
+
+ private void loginFailed() {
finish();
+ T.show("������������");
+ }
+
+ /**
+ * ������������
+ *
+ * @param strings
+ */
+ private void loginSuccess(String... strings) {
+ System.out.println("chenqi ---- loginSuccess" + strings.length);
+ //���������������������
+ Intent intent = new Intent(getApplication(), MainActivity.class);
+ getApplication().startActivity(intent);
getUserInfor(strings[0], strings[1]);
+ finish();
}
private void goToGetMsg() {
--
Gitblit v1.8.0