AlarmManager每小时启动一次服务,每小时下载文件(.zip)进入超时

时间:2011-08-04 17:10:56

标签: android

我有一个服务,它在onCreate的我的AlarmManager startAPP.class(主要活动)中每小时运行一次,如下所示:

Intent it = new Intent("SINC");
PendingIntent p = PendingIntent.getBroadcast(StartAPP.this, 0, it, 0);
Calendar c = Calendar.getInstance();
c.setTimeInMillis(System.currentTimeMillis());
c.add(Calendar.SECOND, inicio);

AlarmManager alarm = (AlarmManager) getSystemService(ALARM_SERVICE);
long time = c.getTimeInMillis();
alarm.setRepeating(AlarmManager.RTC_WAKEUP, time, repetir, p);

一切都好。该服务完全按照应有的方式触发。但是如何下载完成执行有点慢(分钟)1或2.这次android触发一个对话框,说明应用程序停止响应并询问我是否要关闭或等待。

如何获取此服务不会显示此消息(对话框)。因为我读到的服务用于处理耗时和下载文件。

该服务扩展了BroadcastReceiver

public class Sinc extends BroadcastReceiver

注意:如果我告诉我要等待的对话框,整个服务过程都会成功完成。 (所有文件都已下载)

由于

1 个答案:

答案 0 :(得分:1)

您应该让您的Sinc类继承自IntentService而不是BroadcastReceiver,并将PendingIntent修改为服务意图而不是广播意图。