Примеры для режимов Android Launch

Мне трудно понять точные обстоятельства, при которых каждый различные режимы запуска использовались бы в Android. Кто-либо мог предоставить мне некоторые примеры, чтобы помочь понять, когда различные режимы являются соответствующими?

22
задан Casebash 13 April 2010 в 00:08
поделиться

1 ответ

Между приложениями Browser и Alarm Clock вы охватываете все четыре режима запуска:

  1. BrowserActivity использует singleTask. Одновременно существует только одна активность браузера, и она не становится частью задач, которые посылают ей намерения открыть веб-страницы. Хотя он может вернуться к тому, что было запущено недавно, когда вы нажимаете кнопку "Назад", на самом деле он закреплен в нижней части своего собственного стека задач. Он будет разделять свою задачу с запускаемыми им действиями, такими как закладки.

  2. BrowserBookmarksPage uses singleTop. Хотя может быть несколько экземпляров этой активности, если на вершине стека активности задачи уже есть один, он будет повторно использован и будет вызван onNewIntent() . Таким образом, вам придется только один раз нажать кнопку "Назад", чтобы вернуться в браузер, если активность закладок запускается несколько раз.

  3. AlarmClock uses standard. Пользователь может запустить несколько экземпляров этой активности, и эти экземпляры могут быть частью любой задачи и находиться в любом месте стека активности. Будучи довольно простым приложением, оно не требует жесткого контроля над своей деятельностью.

  4. AlarmAlert uses singleInstance. Одновременно выполняется только одно оповещение, и оно всегда является собственной задачей. Все, что он запускает (если запускает), становится частью его собственной новой задачи.

38
ответ дан 29 November 2019 в 04:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: