BroadcastReceiver自动启动启用

时间:2012-12-31 10:25:01

标签: android

我写了一个扩展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);
[...]

1 个答案:

答案 0 :(得分:2)

  

问题是:当我禁用此类(使用IF / ELSE),然后启用它时,我必须重新启动移动设备。

将您在启动时执行的代码移动到某个地方的静态方法中。从引导时间BroadcastReceiver和“启用此逻辑”代码路径调用该代码。