Dịch vụ tạo một số liên tục Notification
và bắt đầu hoạt động chính khi nhấp qua PendingIntent
. Đây là mã.Ngăn thông báo PendingIntent bắt đầu Hoạt động đã bắt đầu?
Intent notificationIntent = new Intent(getApplicationContext(), ViewPagerActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(StreamingService.this, 0, notificationIntent, 0);
Tuy nhiên, nếu hoạt động chính được bắt đầu khi tôi bấm thông báo, nó sẽ được bắt đầu lại, và một lần nữa và ...
Cuối cùng, tôi có cùng một hoạt động pilled lên, một trên đầu trang của người khác. Tôi có thể thấy điều này bằng cách nhấn nút quay lại, điều này sẽ giết hoạt động chính một lần và sau đó đưa tôi trở lại hoạt động tương tự cho đến khi tôi đóng hoạt động cuối cùng.
Làm cách nào để ngăn điều này xảy ra? Có thể PendingIntent
phát hiện hoạt động nhắm mục tiêu đang chạy để nó không tạo lại hoạt động tương tự, mà là bắt đầu hoạt động không?
PS. Tôi xin lỗi nếu không thể giải thích rõ điều này. Nếu đúng như vậy, hãy cho tôi biết và tôi sẽ nhắc lại vấn đề.
Hãy xem [bài đăng này] (http://stackoverflow.com/a/5631993/593709) –
Câu hỏi này thực sự không liên quan gì đến thông báo; chúng chỉ là cơ chế khởi chạy hoạt động của bạn nhưng vấn đề của bạn sẽ xảy ra với bất kỳ cơ chế nào khác. Câu trả lời của @ etienne chứa đựng những gì bạn cần sửa; một tùy chọn khác là sử dụng thuộc tính android: launchMode trong tệp kê khai của bạn để đặt đúng chế độ khởi chạy cho hoạt động này. – mah
@mah bạn nói đúng. Tôi sẽ sửa lỗi này. – sandalone