предупреждение "startactivity вызывается из контекстной службы неактивности" при запуске intent из уведомления
У меня есть service, который запускает notification с startForeground(), я хочу, чтобы уведомление запускало действие по щелчку.acitivty, который я хочу запустить, определяется как android:launchMode="singleTask" и обычно запускается до запуска службы.
Вот мой pending intent код создания:
Intent intent = new Intent(this, MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
PendingIntent pIntent = PendingIntent.getActivity(getApplicationContext(), 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
Когда я нажимаю на уведомление, я получаю следующее предупреждение:
startActivity called from non-Activity context;
forcing Intent.FLAG_ACTIVITY_NEW_TASK for: Intent........
Я также пытался получить действие с this вместо getApplicationContext(), но получил то же самое предупреждение.
Как я должен сделать это право ?
1 ответ:
Не используйте
Intent.FLAG_ACTIVITY_NEW_TASKдляPendingIntent.getActivity. Лучше использоватьFLAG_ONE_SHOT.И попробуйте использовать
ContextизActivityвместоgetApplicationContext().
Comments