Я хочу запустить службу переднего плана. Когда я запускаю Сервис из своей деятельности, все работает нормально. Но когда я запускаю службу через BroadcastReceiver при загрузке / запуске, служба никогда не запускается (возможно, она работает и сразу уничтожается. В любом случае, я не вижу значок уведомления)
В моем телефоне android 10, minSdkVersion 26, compileSdkVersion 29.
Это мой манифест:
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<application...>
<service android:name="de.ggg.location.PositionIntervallService"
android:enabled="true"></service>
<receiver android:name="de.ggg.location.StartupRecevier">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
</application>
StartupRecevier:
public class StartupRecevier extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent arg) {
Intent intent = new Intent(context, PositionIntervallService.class);
if ("android.intent.action.BOOT_COMPLETED".equals(intent.getAction())) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
context.startForegroundService(intent);
} else {
context.startService(intent);
}
}
}
}
PositionIntervallService:
public class PositionIntervallService extends Service {
@Override
public void onCreate() {
startForeground(FOREGROUND_ID, buildForegroundNotification(chan));
// important work here
}
}
Что я делаю не так?