У меня есть этот класс:Run Asyntask код, когда приложение закрыто или в фоновом режиме
private class ReadRSSTask extends AsyncTask < URL, Integer[], Integer[] > {
protected Integer[] doInBackground(URL...urls) {
try {
feed = RssReader.read(urls[0]);
rssItems = feed.getRssItems();
for (RssItem rssItem: rssItems) {
item = new Item(rssItem.getTitle(), rssItem.getDescription(),
rssItem.getPubDate());
list.add(item);
}
...
} catch (Exception e) {
e.printStackTrace();
}
size = list.size();
...
return new Integer[]{size,size_};
}
protected void onPostExecute(Integer[] result) {
final int how = (copySize-result[0])*-1;
final int how_ = (copySize_-result[1])*-1;
if (how > 0) {
avvisi.setText(String.valueOf(how));
}
if (how_ > 0) {
eventi.setText(String.valueOf(how_));
}
}
}
Я хочу этот метод работать, даже если приложение закрыто или в фоновом режиме и отображать уведомления. Он должен проверить, находится ли приложение в фоновом режиме или закрыто, и вызвать их метод, верно?
Вы ищете услугу не asynctask – Raghunandan
Я согласен с Raghunandan. Но если вы хотите отобразить уведомление, например, Toast. Лучше не использовать 'avvisi.setText' или аналогичные представления. 'Потому что вид больше нет. – TruongHieu
Вам нужна услуга. Если вы хотите, чтобы служба выполнялась независимо, вам нужно что-то вроде триггера тревоги. –