Я видел много уроков, говорящих, что для этого мне нужно использовать сервис.После просмотра видео на YouTube получилось следующее:
public class MyService extends Service {
public MyService() {
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
onTaskRemoved(intent);
Toast.makeText(this, "Service", Toast.LENGTH_SHORT).show();
return START_STICKY;
}
@Override
public IBinder onBind(Intent intent) {
// TODO: Return the communication channel to the service.
throw new UnsupportedOperationException("Not yet implemented");
}
@Override
public void onTaskRemoved(Intent rootIntent) {
Intent restartServiceIntent = new Intent(getApplicationContext(), this.getClass());
restartServiceIntent.setPackage(getPackageName());
startService(restartServiceIntent);
super.onTaskRemoved(rootIntent);
}
}
И мне нужно вызвать эту услугу в MainActivity , используя startService(new Intent(this, MyService.class));
Это работает нормально.Даже если я закрою приложение из последних приложений.Но когда я Force Stop приложение из Настройки, служба больше не работает.
Есть ли способ сохранить приложение запущенным, даже если приложение было принудительно убито?