崩溃新的android进程停止整个应用程序

问题描述 投票:0回答:1

我有一个Android应用程序,它有mainctivty,它启动其他活动“secondactivity”,这个第二个活动我开始在一个新的过程中通过在manifestfile中添加android:process =“:SecondProcess”。

我正在使用下面的代码开始第二个活动。

Intent ssIntent = new Intent(getApplicationContext(), SecondActivity.class);
startActivity(ssIntent);

以下是我的清单

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.test">

<!-- To auto-complete the email text field in the login form with the user's emails -->
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.READ_PROFILE" />
<uses-permission android:name="android.permission.READ_CONTACTS" />

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity android:name=".MainActivity">

        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

    <activity
        android:name="com.example.test.SecondActivity"
        android:process=":SecondProcess"
        android:label="@string/title_activity_basic"
        android:theme="@style/AppTheme.NoActionBar">
    </activity>
</application>

在Secondactivity中有崩溃(我添加了测试),现在根据我的理解只有第二个进程在第二个活动中发生崩溃时应该被杀死,因为它在单独的进程中运行,但是在我的测试中整个android应用程序被停止。

能不能让我知道有没有办法处理这样一种方法,只有第二个进程应该被杀死,它不应该打扰整个应用程序。

我可以使用try catch来处理,但我的目标是确保第一个Activity即使在第二个崩溃之后仍然存在。

android process
1个回答
0
投票

用户try/catch来处理SecondActivity中的错误......这样它就不会崩溃整个应用程序。

try {
  //Code that creates error in SecondActivity 
}catch(Exception e) { 
  //Close the activity after exception
  finish();
} 
© www.soinside.com 2019 - 2024. All rights reserved.