2013-08-17 4 views
1

Я столкнулся с проблемой. Предположим, что есть активность A , нажмите кнопку «Домой» и нажмите «А» на задний план. Теперь, оставив в фоновом режиме какое-то время, он будет генерировать уведомление. Нажав на это уведомление, он вернет ту же самую активность, что и в фоновом режиме. Как, после нажатия домашнего ключа, если пользователь снова запустил приложение, нажав на значок или из недавней запущенной истории, андроид вновь откроет точно последнюю активность в предыдущем состоянии. Здесь я не хочу обнаруживать, что было последним действием. Моя активность исправлена, я просто хочу вернуть ее в предыдущее состояние при нажатии на уведомление? Возможно ли это? как это сделать ? вот мой код уведомления,Приведение деятельности с переднего плана

private void generateNotification(Context context, String message, String data) { 
    NotificationManager notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); 
    Notification notification = new Notification(R.drawable.notification, message, System.currentTimeMillis()); 

    Intent notificationIntent = new Intent(context, MenuActivity.class);   
    //notificationIntent.setFlags(Notification.FLAG_ONGOING_EVENT | Notification.FLAG_NO_CLEAR); 
    notificationIntent.setFlags(Intent.FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY); 

    Bundle bundle = new Bundle(); 
    bundle.putString("data",data); 
    notificationIntent.putExtras(bundle); 

    //Constants.NOTIFICATION_ID++; 
    notification.setLatestEventInfo(context, context.getString(R.string.app_name), message, PendingIntent.getActivity(context, 0, notificationIntent, Notification.FLAG_ONGOING_EVENT | Notification.FLAG_NO_CLEAR)); 
    notification.flags |= Notification.FLAG_AUTO_CANCEL; 
    notificationManager.notify(Constants.NOTIFICATION_ID, notification);    
} 

ответ

0

Использование Intent.FLAG_ACTIVITY_CLEAR_TOP вместо FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY.

Смежные вопросы