0

我正在开发一个简单的程序,当移动电池电量不足时,它应该创建一个包含一些数据的通知。

该应用程序运行良好,但我必须首先自己打开该应用程序,或者如果手机已关闭再打开,并且如果用户从当前正在运行的应用程序菜单中关闭该应用程序,它也会关闭。

例如,我怎样才能使它像 truecaller 一样,以便用户在安装后打开它后它会永远继续工作?

4

2 回答 2

1

您必须在设备启动时启动监控服务,才能在设备重新启动后使用它。

示例广播接收器:

<receiver android:name=".BootReceiver">
    <intent-filter>
        <action android:name="android.intent.action.BOOT_COMPLETED" />
        <category android:name="android.intent.category.HOME" />
    </intent-filter>
</receiver>

然后,此接收器BootReceiver可以启动您的Service.

安装后,用户至少需要手动运行您的应用程序一次。这是 Android 中的安全程序。

于 2015-12-09T14:27:22.450 回答
0

我认为http://developer.android.com/training/run-background-service/create-service.html会对你有好处。

IntentService 类为在单个后台线程上运行操作提供了一个简单的结构。这允许它处理长时间运行的操作,而不会影响用户界面的响应能力。此外,IntentService 不受大多数​​用户界面生命周期事件的影响,因此它会在会关闭 AsyncTask 的情况下继续运行

于 2015-12-09T14:24:47.763 回答