PendingIntent on Notification前台服务android

时间:2013-12-10 23:34:56

标签: android service notifications android-pendingintent

我的应用中有活动。当我单击一个选项时,开始运行我的服务前台,并显示如下通知:

PendingIntent pi = PendingIntent.getActivity(getApplicationContext(), 0,
            new Intent(getApplicationContext(), Radio.class),
            PendingIntent.FLAG_UPDATE_CURRENT);

    Notification  notification = new Notification();
    notification.tickerText = "Connecting RadiO!.. Wait..";
    notification.icon = R.drawable.ic_launcher;
    notification.flags |= Notification.FLAG_ONGOING_EVENT;
    notification.setLatestEventInfo(getApplicationContext(), "radiO!",
            "Playing: " + songName, pi);
    startForeground(1, notification);

然后,仍在运行我的活动,我点击我的通知,然后我打开它而不关闭之前的活动。我不能两次进行同样的活动。

1 个答案:

答案 0 :(得分:0)

您正在做的是创建每次单击通知时尝试执行的活动的新实例,以避免它并重用已存在的活动(如果有),只需将活动设置为singleTask在AndroidManifest.xml中,如下所示:

    <activity
       android:name=".YourActivity"
       android:launchMode="singleTask"/>

希望这有帮助。

问候!