我的任务需要在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秒,在它停止工作后,我会收到一条错误,说明无法启动意图并且“进程不好”。此时,我正在使用代码
的单独进程android:process=":remote"
在PolillTask广播接收器的Android Manifest中。
我删除了这段代码,所以我现在只是在默认线程上运行广播接收器。它似乎有效,但如果我知道确切的问题,我会更满意。不幸的是,我之前提到的错误消息并不详细。我现在仍然在几台设备上测试它,看看它会持续运行多长时间。
关于此错误,我需要了解什么?使用相同的流程有任何不利之处吗?