Android - запустить активность из сервиса, отправив уже запущенный процесс в фоновый режим - PullRequest
1 голос
/ 24 октября 2011

У меня есть фоновая служба BGService, она отображает активность BGServActivity, когда происходит определенное событие.Я переопределил onBackPressed, чтобы завершить отображаемое действие BGServActivity.

. Предположим, в данный момент отображается интерфейс приложения App_XYZ.И мой сервис BGService запускается событием и отображается BGServActivity.И когда я нажимаю назад, он закрывает текущую активность BGServActivity и отображает предыдущий пользовательский интерфейс из приложения App_XYZ.

Но я хочу, чтобы пользовательский интерфейс из App_XYZ отправлялся в фоновый режим при запуске BGServActivityиз моего BGService.

Мой вопрос:

Есть ли какой-либо специальный флаг или что-то, что я могу сделать, чтобы отправить ранее отображаемый пользовательский интерфейс из другого действия для отправки нафон до запуска My BGServActivity из Моего сервиса BGService.

Ответы [ 2 ]

2 голосов
/ 24 октября 2011

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

Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);

Я советую против этого, хотя. Стандартным поведением при закрытии действия должно быть возвращение к ранее просмотренному действию.

0 голосов
/ 24 октября 2011

Мне кажется, у меня есть решение.

Сначала покажите экран HOME как решение goto10

Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);

Затем-после откройте мою активность BGServActivity

        Intent i = new Intent();
        i.setClass(getBaseContext(), BGServActivity.class);
        Bundle b = new Bundle();
        b.putBoolean("IS_FROM_SERVICE", true);
        //add extras
        i.putExtras(b);
        startActivity(i);

И это работает ...: D

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...