0

我编写了一个扩展 BroadcastReceiver 的类 Autostart。这从每次重新启动android时开始。在这个类中有一些意图和警报管理器。一切运行完美。现在我添加了“首选项”来启用/禁用这个类。问题是:当我禁用这个类(使用 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);
[...]
4

1 回答 1

2

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

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

于 2012-12-31T12:35:03.190 回答