代码之家  ›  专栏  ›  技术社区  ›  rayman

通过通知向pendingent发送不同的参数

  •  2
  • rayman  · 技术社区  · 14 年前

    putExtra .

    每次通过通知栏启动的活动启动时,它都会销毁尚未启动的活动(仍显示在通知栏上的活动)。

    如何使用自己的参数保存所有通知?

    if (messagesManager == null)
    {
        messagesManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
    }
    
    notification = new Notification(R.drawable.icon, message, System.currentTimeMillis());
    
    // for launch activity
    Intent intent = new Intent(context, DialogActivity.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
    intent.putExtra("fileName", fileName); //- this is where i put my extra's!!
    intent.putExtra("onSdcard", onSdcard);
    PendingIntent contentIntent = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
    
    notification.setLatestEventInfo(context, "DownloadManager", message, contentIntent);
    notification.flags = notification.FLAG_AUTO_CANCEL;
    int noticeId = generateNotificationId(requestId);
    messagesManager.notify(noticeId, notification);
    

    现在是对话活动:

    protected void onCreate(Bundle savedInstanceState)
    {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        Intent i = getIntent();
        boolean onSdcard = i.getBooleanExtra("onSdcard", true);
        String fileName = i.getStringExtra("fileName");
        ...
    }
    

    我试图使用这个技巧,因为它是写在另一篇文章在这里,但它没有工作。

    intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
    
    1 回复  |  直到 8 年前
        1
  •  0
  •   Pentium10    14 年前

    请检查链接的副本,

    你需要两样东西

    • 您需要添加一个操作字符串