Сбой в onBackPressed - java.util.ArrayList com.android.server.am.ActivityStackSupervisor $ ActivityDisplay.mStacks - PullRequest
0 голосов
/ 29 января 2019

Я получаю один сбой при сбое в java.util.ArrayList com.android.server.am.ActivityStackSupervisor $ ActivityDisplay.mStacks .но я не могу найти, где это крушение.

HomeActivity: com.lendlease.plus.activity.HomeActivity.onBackPressed

заголовок показывает ошибку в onBackPressed, но я не использовал ни одного массива в этих методах.также я не могу воспроизвести это.

onBackPressed ():

 @Override
    public void onBackPressed() {
        if (prefManager.getString(PARAMS.KEY_IS_GUEST, "").equals("1")) {
            if (mBinding.bottomNavigation.getSelectedItemId() != R.id.tabExplore) {
                Constants.TAB_SELECTED = Constants.TAB_EXPLORE;
                mBinding.bottomNavigation.setSelectedItemId(R.id.tabExplore);
            } else {
                Intent intent = new Intent(Intent.ACTION_MAIN);
                intent.addCategory(Intent.CATEGORY_HOME);
                intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);
                startActivity(intent);
                finish();
            }
        } else {
            if (mBinding.bottomNavigation.getSelectedItemId() != R.id.tabToday) {
                Constants.TAB_SELECTED = Constants.TAB_TODAY;
                mBinding.bottomNavigation.setSelectedItemId(R.id.tabToday);
            } else {
                Intent intent = new Intent(Intent.ACTION_MAIN);
                intent.addCategory(Intent.CATEGORY_HOME);
                intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);
                startActivity(intent);
                finish();
            }
        }
    }

сбой:

Fatal Exception: java.lang.NullPointerException
Attempt to read from field 'java.util.ArrayList com.android.server.am.ActivityStackSupervisor$ActivityDisplay.mStacks' on a null object reference
android.os.Parcel.readException (Parcel.java:2027)
android.os.Parcel.readException (Parcel.java:1967)
android.app.IActivityManager$Stub$Proxy.startActivity (IActivityManager.java:4822)
android.app.Instrumentation.execStartActivity (Instrumentation.java:1618)
android.app.Activity.startActivityForResult (Activity.java:4621)
android.support.v4.app.BaseFragmentActivityApi16.startActivityForResult (Unknown Source:10)
android.support.v4.app.FragmentActivity.startActivityForResult (Unknown Source)
android.app.Activity.startActivityForResult (Activity.java:4579)
android.support.v4.app.FragmentActivity.startActivityForResult (Unknown Source:10)
android.app.Activity.startActivity (Activity.java:4940)
android.app.Activity.startActivity (Activity.java:4908)
com.lendlease.plus.activity.HomeActivity.onBackPressed (Unknown Source:61)
android.app.Activity.onKeyUp (Activity.java:3114)
android.view.KeyEvent.dispatch (KeyEvent.java:3416)
android.app.Activity.dispatchKeyEvent (Activity.java:3406)
android.support.v7.app.AppCompatActivity.dispatchKeyEvent (Unknown Source:22)
android.support.v7.view.WindowCallbackWrapper.dispatchKeyEvent (Unknown Source:2)
android.support.v7.app.AppCompatDelegateImplBase$AppCompatWindowCallbackBase.dispatchKeyEvent (Unknown Source:8)
com.android.internal.policy.DecorView.dispatchKeyEvent (DecorView.java:486)
android.view.ViewRootImpl$ViewPostImeInputStage.processKeyEvent (ViewRootImpl.java:5715)
android.view.ViewRootImpl$ViewPostImeInputStage.onProcess (ViewRootImpl.java:5578)
android.view.ViewRootImpl$InputStage.deliver (ViewRootImpl.java:5075)
android.view.ViewRootImpl$InputStage.onDeliverToNext (ViewRootImpl.java:5128)
android.view.ViewRootImpl$InputStage.forward (ViewRootImpl.java:5094)
android.view.ViewRootImpl$AsyncInputStage.forward (ViewRootImpl.java:5231)
android.view.ViewRootImpl$InputStage.apply (ViewRootImpl.java:5102)
android.view.ViewRootImpl$AsyncInputStage.apply (ViewRootImpl.java:5288)
android.view.ViewRootImpl$InputStage.deliver (ViewRootImpl.java:5075)
android.view.ViewRootImpl$InputStage.onDeliverToNext (ViewRootImpl.java:5128)
android.view.ViewRootImpl$InputStage.forward (ViewRootImpl.java:5094)
android.view.ViewRootImpl$InputStage.apply (ViewRootImpl.java:5102)
android.view.ViewRootImpl$InputStage.deliver (ViewRootImpl.java:5075)
android.view.ViewRootImpl$InputStage.onDeliverToNext (ViewRootImpl.java:5128)
android.view.ViewRootImpl$InputStage.forward (ViewRootImpl.java:5094)
android.view.ViewRootImpl$AsyncInputStage.forward (ViewRootImpl.java:5264)
android.view.ViewRootImpl$ImeInputStage.onFinishedInputEvent (ViewRootImpl.java:5433)
android.view.inputmethod.InputMethodManager$PendingEvent.run (InputMethodManager.java:3164)
android.view.inputmethod.InputMethodManager.invokeFinishedInputEventCallback (InputMethodManager.java:2665)
android.view.inputmethod.InputMethodManager.finishedInputEvent (InputMethodManager.java:2656)
android.view.inputmethod.InputMethodManager$ImeInputEventSender.onInputEventFinished (InputMethodManager.java:3141)
android.view.InputEventSender.dispatchInputEventFinished (InputEventSender.java:141)
android.os.MessageQueue.nativePollOnce (MessageQueue.java)
android.os.MessageQueue.next (MessageQueue.java:325)
android.os.Looper.loop (Looper.java:142)
android.app.ActivityThread.main (ActivityThread.java:7002)
java.lang.reflect.Method.invoke (Method.java)
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:441)
com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1408)

=========== РЕДАКТИРОВАТЬ ===========

@Override
    public boolean onNavigationItemSelected(@NonNull MenuItem item) {


        switch (item.getItemId()) {
            case R.id.tabExplore:
                Constants.TAB_SELECTED = Constants.TAB_EXPLORE;
                mBinding.viewPagerContainer.setCurrentItem(1);
                changeTabColor();
                break;
            case R.id.tabStore:
                Constants.TAB_SELECTED = Constants.TAB_STORE;
                mBinding.viewPagerContainer.setCurrentItem(3);
                changeTabColor();
                break;
            case R.id.tabMore:
                Constants.TAB_SELECTED = Constants.TAB_MORE;
                mBinding.viewPagerContainer.setCurrentItem(4);
                changeTabColor();
                break;
        }
}

Пожалуйста, предложите любые решения, если вы столкнулись с той же проблемой.Спасибо!

...