Android перезапускает приложение в фоновом режиме

Проведя некоторые исследования, я обнаружил, что есть только один способ перезапустить приложение и перевести его на передний план из фона. Они говорят, что я должен использовать услуги, чтобы сделать это. Но все ответы относятся к developer.android. И я пока не могу использовать developer.android. Не спрашивайте, почему.

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

Что я уже сделал?
Я попробовал несколько фрагментов кода, но они не дали мне решения. Думаю, я не понял основы услуг и широковещательного приемника. Это единственный пункт, на котором я остановился.

Я уверен, что это будет несколько строк кода. Я жду помощи от вас, ребята.


person zbgokalp    schedule 31.05.2012    source источник
comment
Пожалуйста, отредактируйте свой вопрос, заменив все вхождения местоимения it существительными, на которые вы пытаетесь ссылаться.   -  person CommonsWare    schedule 31.05.2012
comment
Другими словами, вы хотите, чтобы ваше приложение всегда было на высоте? или вы хотите сделать свой собственный лаунчер/домашнее приложение?   -  person Selvin    schedule 31.05.2012
comment
По сути, это программа запуска, которая позволяет только авторизованным пользователям переходить к настройкам и т. Д. Но, например, неавторизованный пользователь может перейти к настройкам с системной панелью внизу (чего я не хочу), и когда неавторизованный пользователь сделал это, я хочу вернуться к моему приложению. Поэтому я не позволю неавторизованному пользователю изменять настройки или делать что-либо еще.   -  person zbgokalp    schedule 31.05.2012
comment
Спасибо, Селвин, но я знаю, что это возможно. Я даже использовал некоторые приложения для этого. Но они были слишком сложными. Я знаю, что это известно только крупным разработчикам Android, но это определенно возможно.   -  person zbgokalp    schedule 31.05.2012
comment
Я даже использовал некоторые приложения для этого — назовите любое.   -  person CommonsWare    schedule 31.05.2012
comment
Сулок, например. Он слушает (каким-то образом), когда вы заходите в настройки или куда-то еще, а затем возвращается к основному приложению (лаунчеру). Это не позволит вам внести какие-либо изменения.   -  person zbgokalp    schedule 31.05.2012
comment
@zbgokalp: Sure Lock, похоже, фактически заменяет основной модуль запуска своим собственным (блокирует его по умолчанию; тогда вы не можете вернуться к основному модулю запуска без пароля).   -  person Kevin Coppock    schedule 01.06.2012
comment
Спасибо, kcoppock. И да, Surelock делает это. Но его самая большая особенность заключается не в том, чтобы заменить себя в качестве средства запуска, а в том, чтобы прослушивать все нежелательные попытки (такие как переход к настройкам, попытка изменить статус Wi-Fi и т. д.) и не позволять неавторизованным пользователям делать это. Вот где мне интересно. Сделать пусковую установку очень просто, но я хочу слушать, когда пользователь заходит в настройки или переходит куда-то еще, кроме моей пусковой установки, а затем возвращает мое приложение на передний план.   -  person zbgokalp    schedule 01.06.2012
comment
Если то, что вы говорите, правда, то я потрачу некоторое время на выяснение того, как они это делают, а затем предприму шаги, чтобы убедиться, что уязвимость в системе безопасности, которую они используют, будет устранена. Благодарим вас за ваши усилия по выявлению уязвимостей в системе безопасности, которые авторы вредоносных программ могут использовать для блокировки доступа людей к своим устройствам.   -  person CommonsWare    schedule 01.06.2012
comment
Наверное, поэтому я никогда не получал правильных ответов на свои вопросы. Но, конечно, автор книги не знает об этих особенностях. Они знали и писали только основы. Жалко таких читателей. И извините, потому что я забыл добавить, что это только для основных кодеров в заголовке моего вопроса. Вы можете пойти разобраться и сообщить об этом, все равно никому не будет дела. В конце концов, крупные программисты не считают это недостатком безопасности.   -  person zbgokalp    schedule 01.06.2012


Ответы (1)


Это определенно возможно (Surelock делает это). Но я думаю, вы не можете сделать это с помощью BroadcastReceiver, так как система не отправляет широковещательную рассылку при запуске приложения.

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

Если вы хотите запустить одно действие "всегда сверху", вы можете использовать этот метод. Это даже не требует реализации службы.

Надеюсь, это решит некоторые из ваших проблем.

person PC.    schedule 22.06.2012
comment
Спасибо за ответ. Это был правильный ответ, и я проголосовал за него и проверил. но теперь я использую другой метод, чтобы пользователь не мог уйти куда-либо еще, кроме моего приложения. Также очень приятно услышать от кого-то, кто действительно знает кодирование и обходные пути :) - person zbgokalp; 24.06.2012