Tôi đang cố gắng thêm mục Hành động thông báo trong ứng dụng của tôi là trình phát nhạc. Khi một luồng được bắt đầu, một thông báo sẽ được kích hoạt và nút dừng cho luồng sẽ được hiển thị trong thông báo không chính xác. Thông báo hoạt động tốt cho đến nay, tôi gặp sự cố với mục tác vụ dừng. Sau đây là cách nó được khai báo trong các dịch vụ bắt đầu dòng:.Tác vụ thông báo của Android không được kích hoạt (PendingIntent)
Intent stopIntent = new Intent(this, MusicPlayerNew.class);
stopIntent.putExtra("STOP", "STOP");
PendingIntent stopPendingIntent = PendingIntent.getActivity(this, 0,
stopIntent, PendingIntent.FLAG_UPDATE_CURRENT, null);
mBuilder.addAction(R.drawable.ic_stat_stop, "Stop", stopPendingIntent);
Bây giờ trong onResume() - Phương pháp hoạt động của tôi, tôi kiểm tra với getIntent() getStringExtra() cho "STOP" thêm, nhưng ý tôi lấy thông qua getIntent() không có tính năng bổ sung thiết :(
tôi cũng đã cố gắng để kiểm tra để gửi quảng bá (tôi có một máy thu phát sóng làm việc để giao tiếp từ các dịch vụ cho hoạt động này)
Intent stopIntent2 = new Intent(MusicPlayerNew.STOP_MEDIAPLAYER);
PendingIntent stopPendingIntent2 = PendingIntent.getBroadcast(this, 0,
stopIntent2, PendingIntent.FLAG_UPDATE_CURRENT);
mBuilder.addAction(R.drawable.ic_stat_stop, "Stop", stopPendingIntent2);
Bây giờ điều này hoạt động nếu hoạt động hiện đang ở nền trước. n nền nút dừng không làm gì :(
EDIT: Tôi có BroadcastReceiver trong Hoạt động của tôi như là một lớp riêng
private class DataUpdateReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
..
}}
Trong onResume() đăng ký ứng dụng của tôi cho thu này:
intentFilter = new IntentFilter(STOP_MEDIAPLAYER);
registerReceiver(dataUpdateReceiver, intentFilter);
onPause()
unregisterReceiver(dataUpdateReceiver);
Bây giờ, nếu tôi loại bỏ việc hủy đăng ký khỏi phương thức onPause() - phát sóng được nhận ngay cả khi ứng dụng/hoạt động không ở nền trước nữa. Nhưng đây có phải là cách đúng để làm điều đó không? Tôi đã đăng ký/hủy đăng ký nội dung này từ một hướng dẫn trên web mà tôi nghĩ ..
Tôi gặp vấn đề tương tự trên KitKat. Tôi có hai hành động, đầu tiên được gọi là tốt, thứ hai không được gọi là cả. Bạn đã tìm cách giải quyết vấn đề này chưa? – Nik
Ok, tôi đã tìm thấy giải pháp. Nhìn phần dưới cùng của tôi. – Nik