1

我有一项需要在 Android 设备上频繁运行的任务。我在启动时运行以下代码:

am = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE);

pollIntent = new Intent(context,PollTask.class);

pollPendingIntent = PendingIntent.getBroadcast(context, 0, pollIntent, 0);

am.setRepeating(AlarmManager.RTC_WAKEUP,
            System.currentTimeMillis(), 1000*15, pollPendingIntent);

请不要唠叨我关于电池使用的问题,这是针对自定义嵌入式应用程序的,所以这不是问题。

问题是该任务在一定时间后频繁停止运行。我开始查看 logcat 并注意到每 15 秒,在它停止工作后,我会收到一条错误消息,指出无法启动 Intent 并且“进程错误”。此时,我在代码中使用了一个单独的进程

android:process=":remote"

在 PollTask​​ 广播接收器的 Android 清单中。

我删除了这段代码,所以我现在只是在默认线程上运行广播接收器。它似乎正在工作,但如果我知道确切的问题是什么,我会更满意。不幸的是,我之前提到的错误消息一点也不冗长。我现在仍在几台设备上对此进行测试,看看它会持续运行多长时间。

关于这个错误,我需要知道什么?使用相同的过程有什么缺点吗?

4

0 回答 0