cod*_*eee 11 android android-notifications android-activity
我已经创建了一个管理短信的应用程序,我已经创建了通知,但是当我点击它们时它启动了另一个活动,我想知道如何检查一个活动是否已经停止并恢复它.
以下是用于创建pendingintent的代码:
private void createNotification(SmsMessage sms, Context context){
final NotificationManager nm = (NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE);
String contentTitle = "";
// construct the Notification object.
final NotificationCompat.Builder builder = new NotificationCompat.Builder(context)
.setContentTitle(contentTitle)
.setContentText(sms.getMessageBody())
.setSmallIcon(R.drawable.ic_launcher)
.setLargeIcon(getIconBitmap())
.setNumber(nmessages);
builder.setAutoCancel(true);
//(R.drawable.stat_sample, tickerText,
// System.currentTimeMillis());
// Set the info for the views that show in the notification panel.
//notif.setLatestEventInfo(this, from, message, contentIntent);
/*
// On tablets, the ticker shows the sender, the first line of the message,
// the photo of the person and the app icon. For our sample, we just show
// the same icon twice. If there is no sender, just pass an array of 1 Bitmap.
notif.tickerTitle = from;
notif.tickerSubtitle = message;
notif.tickerIcons = new Bitmap[2];
notif.tickerIcons[0] = getIconBitmap();;
notif.tickerIcons[1] = getIconBitmap();;
*/
// Creates an explicit intent for an Activity in your app
Intent resultIntent = new Intent(context, BasicActivity.class);
resultIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
// Because clicking the notification opens a new ("special") activity, there's
// no need to create an artificial back stack.
PendingIntent resultPendingIntent =
PendingIntent.getActivity(
context,
0,
resultIntent,
PendingIntent.FLAG_UPDATE_CURRENT
);
// Ritardo in millisecondi
builder.setContentIntent(resultPendingIntent);
nm.notify(R.drawable.ic_drawer, builder.build());
Run Code Online (Sandbox Code Playgroud)
Jan*_*nBo 10
你需要在你的PendingIntent中设置标志......就像FLAG_UPDATE_CURRENT一样.
这就是全部. http://developer.android.com/reference/android/app/PendingIntent.html
编辑1:我误解了这个问题.
以下是具有相同问题但已解决的主题的链接:
请阅读上述答案以获得完整的解决方案,并告诉我它是否有效.
将此行添加到应用程序清单文件中的相应活动中。
android:launchMode="singleTask"
例如:
<activity
android:name=".Main_Activity"
android:label="@string/title_main_activity"
android:theme="@style/AppTheme.NoActionBar"
android:launchMode="singleTask" />
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19255 次 |
| 最近记录: |