Android Oreoで通知ドットを表示せずにバックグラウンドサービスを続行する方法?通知を使用してバックグラウンドサービスを続行しますが、実行中のサービスの通知を表示したくありません。
このコードは私のために働いた。最初に確認してください:
1-マニフェストでサービスを定義する
2-マニフェストで権限を定義する
<uses-permission Android:name="Android.permission.FOREGROUND_SERVICE" />
3-あなたが前にサービスを開始したことを確認してください。
サービスには通知が必要です。通知にはChannelIDが必要であることに注意してください。
このページはあなたを助けることができます:
次のコードをサービスに貼り付けます
@Override
public void onCreate() {
super.onCreate();
try {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
startForeground(" your Notification ID ", notification);
}
} catch (Exception e) {
Log.e(" Error --->> ", e.getMessage());
}
}
その後、このコードを追加します:
@Override
public ComponentName startForegroundService(Intent service) {
return super.startForegroundService(service);
}
この:
@Override
public void onDestroy() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
stopForeground(true);
}
}