Nói chung, khi tôi có thông báo thông báo trên thanh thông báo và nhấp vào nó. Nó mở ứng dụng đã đăng ký cho tin nhắn đó.Cách xác định xem ứng dụng Android có mở từ Thông báo thông báo không?
Hoạt động của Startup, Cách xác định xem ứng dụng có đang mở không?
và tốt hơn nữa là cách truy xuất id của thông báo trên phương thức OnCreate()?
Cập nhật: từ @Ovidiu - đây là mã của tôi để putExtra để đẩy
Notification notification = new Notification(icon, tickerText, System.currentTimeMillis());
notification.contentView = contentView;
Intent notificationIntent = new Intent(this, Startup.class);
notificationIntent.putExtra("JOBID", jobId);
PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, PendingIntent.FLAG_ONE_SHOT);
notification.flags = Notification.FLAG_AUTO_CANCEL;
notification.contentIntent = contentIntent;
mNotificationManager.notify(jobId, notification);
và trên chính Hoạt động "Startup.java" code đang
Intent intent = this.getIntent();
if (intent != null && intent.getExtras() != null && intent.getExtras().containsKey("JOBID")) {
int jobID = this.getIntent().getExtras().getInt("JOBID");
if (jobID > 0) {
}
}
intent.getExtras() luôn trả về null. Hóa ra, tôi cần phải vượt qua PendingIntent.FLAG_ONE_SHOT. Nó bây giờ được thông qua cùng !!
"cần vượt qua PendingIntent.FLAG_ONE_SHOT" - thực sự hữu ích. Nhưng bạn cần phải kiểm tra một thứ khác - nếu Hoạt động này đến từ lịch sử. Kiểm tra câu trả lời của tôi dưới đây. – Khobaib