Android 崩溃后开始活动

Android 崩溃后开始活动,android,android-intent,nullpointerexception,crash,Android,Android Intent,Nullpointerexception,Crash,例如,我的应用程序抛出一个NullPointerException。如何打开活动(例如–SendCrashLogActivity,或已完成的Activity1)? 我的设想: 您可以使用 如果不可能,则不应重新启动应用程序 Thread.setDefaultUncaughtExceptionHandler (new Thread.UncaughtExceptionHandler() { @Override public void uncaughtException

例如,我的应用程序抛出一个
NullPointerException
。如何打开活动(例如–
SendCrashLogActivity
,或已完成的
Activity1
)? 我的设想:

您可以使用

如果不可能,则不应重新启动应用程序

Thread.setDefaultUncaughtExceptionHandler (new Thread.UncaughtExceptionHandler()
    {
      @Override
      public void uncaughtException (Thread thread, Throwable e)
      {
           Intent intent = new Intent (getApplicationContext(),DrawView.class);
           startActivity(intent); //after calling this method, my application will be frozen. Android 6
      }
    });

开始后使用以下代码触觉(意图)

如果使用finish()方法,则活动将被销毁,因此您无法转到上一个活动。 如果您想使用intent执行上一个活动

否则在清单文件中声明如下

<activity
        android:name=".CusrrentActivity(activity2)"
        android:label="@string/app_name"
        android:parentActivityName=".PreviousAtivity(activity1)"
        android:screenOrientation="portrait" >
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value="com.example.PreviousAtivity(activity2)" />
    </activity>


这里有一个更好的想法:与其花时间编写代码以从崩溃中恢复,不如花时间改进代码,使其不会崩溃……2Dee,您可以将注释移动到答案,我会让您的答案尽可能好)…我会尝试使用此库
<activity
        android:name=".CusrrentActivity(activity2)"
        android:label="@string/app_name"
        android:parentActivityName=".PreviousAtivity(activity1)"
        android:screenOrientation="portrait" >
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value="com.example.PreviousAtivity(activity2)" />
    </activity>