我写了一个扩展BroadcastReceiver的类Autostart。这从每次重启android时开始。在这个课程中,有一些意图和警报管理员。一切都运行得很好。现在我添加了“preference”来启用/禁用此类。问题是:当我禁用这个类(使用IF / ELSE),然后启用它时,我必须重新启动移动。
如何解决此问题?
public void onReceive(Context context, Intent intent) {
Calendar cal1 = Calendar.getInstance();
[...]
Intent intent2 = new Intent(context, AlarmReceiver.class);
[...]
AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
[...]
答案 0 :(得分:2)
问题是:当我禁用此类(使用IF / ELSE),然后启用它时,我必须重新启动移动设备。
将您在启动时执行的代码移动到某个地方的静态方法中。从引导时间BroadcastReceiver
和“启用此逻辑”代码路径调用该代码。