[英]I can't receive notifications when screen is lock
我正在使用Firebase發送推送通知。 當我將應用程序最小化並且3G上的屏幕鎖定和數據網絡以及90%的batery時,我無法接收通知。 我需要在屏幕鎖定時收到通知。
我在日志中注意到屏幕鎖定。
2019-06-13 16:40:35.901 2372-9542/? D/MC_BatteryStatsData: operate removing wakelock wake:com.exampleapp/.FCMListenerService
這適用於Moto C Android版本7。
我試圖將此權限添加到清單文件中。
<uses-permission android:name="android.permission.WAKE_LOCK"/>
禁用電池保護程序。 它位於菜單Settings -> Battery
。
這是我的FCMInstanceIDListenerService.java
public class FCMInstanceIDListenerService extends FirebaseInstanceIdService {
private static final String TAG = "MyInstanceIDLS";
@Override
public void onTokenRefresh() {
String refreshedToken = FirebaseInstanceId.getInstance().getToken();
MetodosRepo.setPreference(getBaseContext(), Globals.DEVICE_TOKEN, refreshedToken);
}
}
和FMCListenerService.java
public class FCMListenerService extends FirebaseMessagingService {
@Override
public void onMessageReceived(RemoteMessage message) {
Log.e(_TAG, "onMessageReceived");
}
}
我希望在屏幕鎖定時收到通知
從Android 8.0開始,他們設置了后台執行限制 ,因此當您的應用程序在后台時,您沒有收到推送通知。
我想建議實現一個JobScheduler
,它將連接到您的服務器以查看是否有任何待處理通知並相應地創建通知警報。 這是一個關於如何實現JobScheduler的示例項目。
但是,Android會處理推送通知,我會在3-5分鍾后收到通知(當服務處於前台時,幾乎不會立即收到通知)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.