Android Activity синглтон - PullRequest
       16

Android Activity синглтон

11 голосов
/ 20 сентября 2011

У меня есть действие под названием MainActivity.Это действие запускает уведомление с PendingIntent, которое открывает эту MainActivity.

Итак, чтобы закрыть приложение, мне нужно дважды нажать кнопку «Назад».Я хотел бы настроить деятельность как синглтон.Я попытался установить singleInstance или singleTask для манифеста, но это не работает.

Ответы [ 2 ]

17 голосов
/ 20 сентября 2011

singleInstance и singleTask не рекомендуются для общего использования.

Попробуйте:

 android:launchMode="singleTop"

Для получения дополнительной информации, пожалуйста, обратитесь к launchMode раздел изДокументация по элементам деятельности.

В дополнение к предыдущей ссылке вы должны прочитать задачи и задний стек

5 голосов
/ 21 сентября 2011

Если вам нужно вернуться в свое приложение, не создавая новый экземпляр своей активности, вы можете использовать те же фильтры намерений, которые использует android при запуске приложения:

final Intent notificationIntent = new Intent(context, MainActivity.class);
notificationIntent.setAction(Intent.ACTION_MAIN);
notificationIntent.addCategory(Intent.CATEGORY_LAUNCHER);
PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);

В качестве намерения, которое вы создали дляоткрыть вашу активность из панели уведомлений так же, как android, используемый для запуска вашего приложения, вместо создания новой будет показана ранее открытая активность.

...