1

我的应用程序在设备重启时发送短信。我在后台服务中通过短信发送设备的当前位置。我想为用户提供启用和禁用后台应用程序的选择。怎么做?

4

4 回答 4

2

使用共享首选项保护器启用和禁用状态。

当启用/禁用或读取引导接收器中的共享首选项值并相应地发送/不执行任何操作时注册/取消注册引导接收器(侦听引导完成事件的广播接收器)

于 2013-09-18T05:34:02.013 回答
2

我可以想到两种简单的方法来解决这个问题:

1)设置一个标志,您的接收器可以检查以忽略或接受广播,并且根本不用担心启用/禁用它。

2)以编程方式创建 BroadcastReceiver(可以只是一个内部类),并在应用程序的给定部分根据需要注册和注销它。

总的来说,我发现用代码而不是 XML 定义我的 BroadcastReceivers 提供了更多的灵活性,并且通常对我来说更容易管理。

问候-沙迪亚

于 2013-09-18T05:37:36.050 回答
1

在服务中放置一个 if 如果启用则执行该服务 如果禁用则不要...在您的应用程序中放置一个按钮来启用和禁用该服务您可以使用共享首选项来记住用户使用布尔值的选择

于 2013-09-18T05:59:45.470 回答
0

我认为你应该开发服务类。并且只有在用户选择启用时才开始。

如果用户选择启用:(启动服务的示例代码){

                   intent = new Intent(TrackActivity.this, TrackService.class);
                intent.putExtra("IN_TRACKID", currentTrackId);
               intent.putExtra("IN_TRACK_TYPE",IN_TRACK_TYPE);
               startService(intent); 

                   }
于 2013-09-18T06:00:43.453 回答