| | |
| | | import android.text.TextUtils; |
| | | import android.view.View; |
| | | |
| | | import com.lzy.okgo.cache.CacheMode; |
| | | import com.moral.andbrickslib.utils.GsonUtil; |
| | | import com.moral.andbrickslib.utils.NetworkUtil; |
| | | import com.moral.andbrickslib.utils.StatusBarUtil; |
| | | import com.moral.yunfushao.wxapi.WXEntryActivity; |
| | | import com.moral.yunfushao.wxapi.data.AccessTokenBean; |
| | | import com.moral.yunfushao.wxapi.data.TokenEffectivenessBean; |
| | | import com.moral.yunfushao.MainActivity; |
| | | import com.moral.yunfushao.MainApp; |
| | | import com.moral.yunfushao.R; |
| | | import com.moral.yunfushao.base.BaseActivity; |
| | | import com.moral.yunfushao.common.WXConstants; |
| | | import com.moral.yunfushao.httputils.HttpCallBack; |
| | | import com.moral.yunfushao.httputils.WXHttpUtil; |
| | | import com.moral.yunfushao.utils.SharedPreferencesUtil; |
| | | |
| | | |
| | | /** |
| | | * Created by haijiang on 2017/2/20. |
| | | */ |
| | | |
| | | public class SplashActivity extends BaseActivity implements Runnable{ |
| | | public class SplashActivity extends BaseActivity implements Runnable { |
| | | private AccessTokenBean bean = null; |
| | | |
| | | @Override |
| | | protected void onCreate(Bundle savedInstanceState) { |
| | | super.onCreate(savedInstanceState); |
| | |
| | | public void run() { |
| | | try { |
| | | Thread.sleep(1000); |
| | | } catch(InterruptedException e) { |
| | | } catch (InterruptedException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | if(!TextUtils.isEmpty(MainApp.userId)){ |
| | | bean = SharedPreferencesUtil.getUtil(this).getWXToken(); |
| | | |
| | | if (NetworkUtil.isAvailable(this)) { |
| | | //网络可用状态是否 |
| | | if (bean == null) { |
| | | goHome(); |
| | | //非微信登陆 |
| | | } else { |
| | | //微信登陆 |
| | | // checkWXLogin(); |
| | | checkTokenEffective(); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 判断是否token有效 |
| | | */ |
| | | private void checkTokenEffective() { |
| | | String url = "https:api.weixin.qq.com/sns/auth?access_token=" + bean.getAccess_token() + "&openid=" + WXConstants.APP_ID; |
| | | WXHttpUtil.doGet(url, CacheMode.DEFAULT, new HttpCallBack() { |
| | | @Override |
| | | public void onSuccess(String res, String msg) { |
| | | TokenEffectivenessBean bean = GsonUtil.toObj(msg, TokenEffectivenessBean.class); |
| | | if (bean.getErrcode() == 0) { |
| | | //成功授权 |
| | | checkWXLogin(); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public void showLoadingDialog() { |
| | | |
| | | } |
| | | |
| | | @Override |
| | | public void onFail(int errno, String s) { |
| | | //无效直接 |
| | | goHome(); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | /** |
| | | * 检查是否登陆失效 |
| | | */ |
| | | private void checkWXLogin() { |
| | | String url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid= " + |
| | | WXConstants.APP_ID + |
| | | "&secret=" + "应用密钥" + "&code="+ |
| | | WXEntryActivity.code + |
| | | "&grant_type=authorization_code"; |
| | | // String url = "https://api.weixin.qq.com/sns/auth?access_token=ACCESS_TOKEN&openid=OPENID"; |
| | | WXHttpUtil.doGet(url, CacheMode.DEFAULT, new HttpCallBack() { |
| | | @Override |
| | | public void onSuccess(String res, String msg) { |
| | | AccessTokenBean accessTokenBean = GsonUtil.toObj(msg, AccessTokenBean.class); |
| | | |
| | | } |
| | | |
| | | @Override |
| | | public void showLoadingDialog() { |
| | | } |
| | | |
| | | @Override |
| | | public void onFail(int errno, String s) { |
| | | goHome(); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | private void goHome() { |
| | | if (!TextUtils.isEmpty(MainApp.userId)) { |
| | | Intent intent = new Intent(this, MainActivity.class); |
| | | startActivity(intent); |
| | | }else{ |
| | | } else { |
| | | Intent intent = new Intent(this, LoginActivity.class); |
| | | startActivity(intent); |
| | | } |