0

我正在开发一个音乐播放器,但是当我单击创建的通知时,会显示此活动的新版本,而不是显示当前正在播放的歌曲和搜索栏的活动。

我用于通知的当前代码是

Intent i = new Intent(this, AmplitudeMusicPlayer.class);
    i.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
    PendingIntent pIntent = PendingIntent.getActivity(this, 0 , i, 0);

    NotificationManager notificationManager = (NotificationManager)    getSystemService(NOTIFICATION_SERVICE);
    NotificationCompat.Builder noti = new NotificationCompat.Builder(this);
    noti.setContentTitle("Now Playing")
        .setContentText(songTitle)
        .setSmallIcon(R.drawable.default_art)
        .setContentIntent(pIntent);

    notificationManager.notify(0, noti.build());
4

1 回答 1

0

您要为您的活动声明哪种启动模式?

http://developer.android.com/guide/topics/manifest/activity-element.html#lmode

“标准”和“singleTop”模式仅在一个方面彼此不同:每次“标准”活动有新的意图时,都会创建一个新的类实例来响应该意图。每个实例处理一个意图。类似地,也可以创建“singleTop”活动的新实例来处理新意图。但是,如果目标任务在其堆栈顶部已经有活动的现有实例,则该实例将接收新意图(在 onNewIntent() 调用中);未创建新实例。在其他情况下——例如,如果“singleTop”活动的现有实例在目标任务中,但不在堆栈顶部,或者它在堆栈顶部,

于 2013-06-11T20:13:23.073 回答