Я застрял на пару часов по глупой проблеме.Запуск Android-активности
Мое приложение состоит из двух видов деятельности: A (мастер) и B. Существует также одна услуга S. «Обычный» стек задач - это AB и S работает в фоновом режиме.
Моя проблема возникает, когда я хотел бы непосредственно связаться с деятельностью B с уведомлением. Я должен построить стек задач для получения AB, чтобы сохранить поведение кнопки возврата по умолчанию. (Я хочу, чтобы пользователь мог вернуться к A).
Потому что я использую API 7, я не могу использовать массив намерений, как показано в учебнике разработчиков Android forroid http://developer.android.com/guide/topics/ui/notifiers/notifications.html. Таким образом, я решил добавить специальное действие (S.ACTION_CUSTOM) в намерение, отправленное уведомлением, чтобы отличить этот случай в onCreate() от деятельности A.
Цель, связанная с уведомлением, заявленным в сервис S:
Intent notificationIntent = new Intent(this, A.class);
notificationIntent.setAction(ACTION_CUSTOM);
Сейчас в а, в конце метода OnCreate(), я добавляю:
if (S.ACTION_CUSTOM.equals(getIntent().getAction())) {
Intent intent = new Intent(this, B.class);
intent.setAction(S.ACTION_CUSTOM);
startActivity(intent);
}
Этот код работает, чтобы перейти непосредственно к B с уведомлением и уполномочить возвращение к A. Но один раз Я использую уведомление «shorcut», затем B достигается непосредственно, когда приложение запускается, даже из главного меню. Я пробовал много вещей, чтобы понять, что произойдет, но даже если я добавлю getIntent(). SetAction (ANYTHING) в конце инструкции if в A, поведение будет одинаковым.
Может ли кто-нибудь сказать мне, что происходит с моим кодом, пожалуйста? Morover Я открываю глаза другим способом, чтобы получить мои пожелания.
Спасибо.
Edit:
Часть манифеста XML:
<activity
android:name=".A"
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=".B"
android:label="@string/app_name" >
</activity>
Но я думаю, что умысел фильтры не имеют ничего общего с моей проблемой.
В случае открытия операции «Активность» из Уведомления * должна быть открыта кнопка «Назад». Действие А? Это не регулярный андроид «поток» - назад должен вернуться к предыдущему экрану – barry
@barry, вы правы Я не выражал себя правильно Я не хочу регулярного потока андроида, потому что в моем случае уведомление а также будет удобнее, если кнопка возврата отобразит активность A. – FabiF
опубликуйте свой манифест. xml –