у меня есть проект, загрузчик приложений и я использую класс обслуживания для управления задачами загрузки и показывать уведомлениями, как это: проблемы: когда я закрываю приложение из последних приложений путем прокрутки, Служба будет остановлена. Я не могу использовать startForeground
для уведомлений, потому что у меня есть несколько уведомлений в одной службе. и мне нравится notify.setAutoCancel(true)
отлично работает. здесь AndroidManifest.xml код:фона сервиса для многозадачного загрузчика останавливается, когда близко приложение от «последних приложений»
<service android:name=".Downloader" android:exported="false" android:enabled="true"
android:stopWithTask="false" />
здесь начинает обслуживание:
public static void intentDownload(Context context , FileInfo info) {
Intent intent = new Intent(context, Downloader.class);
intent.setAction(ACTION_DOWNLOAD);
intent.putExtra(EXTRA_TAG, info.Tag);
intent.putExtra(EXTRA_APP_INFO, info);
context.startService(intent);
}
и вот onStartCommand
:
public int onStartCommand(Intent intent, int flags, int startId) {
if (intent != null) {
String action = intent.getAction();
FileInfo fInfo;
String tag = intent.getStringExtra(EXTRA_TAG);
switch (action) {
case ACTION_DOWNLOAD:
fInfo = (FileInfo) intent.getSerializableExtra(EXTRA_APP_INFO);
download(fInfo);
break;
case ACTION_PAUSE:
fInfo = (FileInfo) intent.getSerializableExtra(EXTRA_APP_INFO);
pause(fInfo);
break;
case ACTION_CANCEL:
cancel(tag);
break;
case ACTION_PAUSE_ALL:
pauseAll();
break;
case ACTION_CANCEL_ALL:
cancelAll();
break;
}
}
return Service.START_STICKY;
}
как я могу это исправить?!
Вы можете снова запустить службу 'onTaskRemoved'. – SripadRaj
@SripadRaj, если я это сделаю, я потеряю задачи загрузки. служба работает и работает. –