我的应用从IntentService
创建Notification
。点击时,Notification
打开Activity
类型的MainActivity
。 MainActivity's
onCreate()
每次点击新的Notification
时都会调用方法,而不管是否已创建MainActivity
的实例。点击Notification
总是会创建一个替换旧的实例。仅当尚未创建活动时,如何从活动通知创建活动?
只有当活动不存在时,才有办法拨打onCreate()
, onNewIntent()
如果MainActivity
已经存在(或其他适当的方法)?
的Notification
正在创建这样的:
NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
Notification notification = new Notification(com.exampleapp.myclient.R.drawable.dummy_notification_icon, "Notification!", System.currentTimeMillis());
Intent notificationIntent = new Intent(this, MainActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(getBaseContext(), 0, notificationIntent, Intent.FLAG_ACTIVITY_NEW_TASK);
notification.setLatestEventInfo(context, notificationTitle, "test", pendingIntent);
notificationManager.notify(1, notification);
MainActivity
在清单:
<activity android:name="com.exampleapp.myclient.MainActivity"
singleTop="true">
</activity>
谢谢。 singleTask和singleInstance launchMode有什么不同? –
@PierreRymiortz看这里:http://stackoverflow.com/a/3220375/969325 – Warpzit
@PierreRymiortz你也可以访问有关android:launchmode – Warpzit