Я обнаруживаю ситуацию первого запуска приложения и перезапускаю ее.
аю, что App Manager запускает мое приложение после установки неправильно. Он запускает мои приложения в своей задаче. Когда я нажимаю ДОМОЙ и нажимаю значок приложения, я запускаю вторую задачу с моим приложением.
Я проверял это. Я сделал два приложения App1, App2. В App2 есть два действия A и B. App1 запускает App2 самым простым способом.
Intent intent = new Intent(Intent.ACTION_RUN);
intent.setComponent(new ComponentName("org.app2.test", "org.app2.test.Screen1"));
Тест 1. Запустите App1. Приложение 1 выполняет действие App2 A. Активность A выполняет действие B. Нажмите Дом. Нажмите значок App2. Вы можете увидеть действие App2 A. (Неверно. Нам нужно выполнить задачи с App2)
Это я изменил код для запуска App2.
Intent intent = new Intent(Intent.ACTION_MAIN, null);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setComponent(new ComponentName("org.app2.test", "org.app2.test.Screen1"));
Тест 2. Запустите App1. Приложение 1 выполняет действие App2 A. Активность A выполняет действие B. Нажмите Дом. Нажмите значок App2. Вы можете увидеть App2 активность B. (Хорошо.)
Как я могу изменить манифест App2 и заставить App2 всегда работать в своей собственной задаче?
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".Screen1"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".Screen2">
<intent-filter>
<action android:name="org.app2.test.screen2" />
<category android:name="android.intent.category.DEFAULT"></category>
</intent-filter>
</activity>
</application>