从通知开始活动而不再创建活动?

时间:2014-06-05 04:05:23

标签: android android-intent android-activity notifications

我想从通知待处理意图开始main.class活动  没有再开始活动。我需要打开旧的详细信息(不要开始onCreate方法)。

当我按下此通知main.class时,会再次创建活动。  这是我的通知:

Context context = Main.this;
Intent i = new Intent(context,Main.class);
PendingIntent pen = PendingIntent.getActivity(context,0,i,0);

如何在不重新启动活动的情况下打开main.class? 需要添加onCreate()或通知的内容是什么?!

2 个答案:

答案 0 :(得分:2)

使用"机器人:launchMode =" singleTop""在urman活动的androidmanifest文件上。

然后,

     Context context = Main.this;
     Intent i = new Intent(context,Main.class);
     i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP);
     PendingIntent pen = PendingIntent.getActivity(context,0,i,0);

如果你的mainclass不存在则会调用oncreate()的Notification类更新,否则会调用onNewIntent()。

你可以在mainclass中创建onNewIntent(),比如

   protected void onNewIntent(Intent intent) {
    // TODO Auto-generated method stub
    super.onNewIntent(intent);
    if (getIntent() != null) {
           // do the stuff here.

            }
           }

答案 1 :(得分:0)

在onCreate方法中,有一个标志,告诉您此活动是从其他活动调用还是从服务调用并相应处理。

当一个未决意图开始时,它通常以意图的活动开始于onCreate。