Android 开发实战遇到的问题

1.微信支付 后 在广播里进行,发送EventBus,然后代码运行顺序不对,

造成这个问题的原因机型不一样,问题不一样,最后的方法就是统一放到主线程,这样代码就会顺序执行

   if (!TextUtils.isEmpty(order_sn)) {
                                    if (order_sn.equals(data)) {

                                        runOnUiThread(new Runnable() {
                                            @Override
                                            public void run() {
                                                try {
                                                    ToastUtils.showShort("购买会员成功");
                                                    userInfo.setVip(3);

                                                    SecuritySharedPreference.getInstance().edit().putInt("vip", 3).apply();
                                                    App.userInfo = userInfo;

                                                    mViewBinding.butAddMember.setClickable(false);
                                                    mViewBinding.butAddMember.setText("续费会员");
                                                }finally {
                                                    startActivity(MainActivity.class);
                                                    MemberActivity.this.finish();
                                                }
                                            }

2.AsyncTask 在同一时间只能开启一个,在循环里调用 AsyncTask 也不行,线程会卡死的

3.使用MVP  , 在网络没有请求完 用户点击了返回键,然后报 空指针,一开始我觉得是 惯得,后来 在Presenter这里  除了判断bean 不为空再加个判断view != null 就好了. 我觉得也是惯得

public class ClassesPresenter extends ClassesConst.pClassesPresenter {

    @Override
    public void setMvp() {
        mModel.requestData(classesBean -> {
            if (classesBean != null && mView!=null)
                mView.showData(classesBean);
        }, mView.getCt());
    }
}

 

 

 

你可能感兴趣的:(安卓错误异常统计)