java - 即使我在重新启动后不启动应用程序,我仍然可以看到 BOOT_COMPLETED 吗?

标签 java android bootcompleted

假设我的接收器和服务是正确的,即使我重新启动设备并且我不会第一次打开/启动它(应用程序),BOOT_COMPLETED 是否仍会运行?那么闹钟在到期日期和时间时会起作用吗?

注意:我不会尝试在重新启动后启动该应用程序。

这是我的 list

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" android:persistent="true">
  <receiver android:name="com.majimechibireminder2.OnBootReceiver" >
     <intent-filter>
        <action android:name="android.intent.action.BOOT_COMPLETED" />
        <category android:name="android.intent.category.HOME" />
     </intent-filter>
 </receiver>

  <receiver android:name=".AlarmReceiver"></receiver>
   <service android:name=".ChibiReminderService" >
 </service>
   <activity android:name=".ChibiRemind"></activity>
</application>

如果没有,您能否建议我一些合适的代码来实现我的理想。

最佳答案

您的应用程序在安装到手机后需要至少启动一次才能接收广播。如果您正在使用闹钟,则无需担心它,因为用户需要打开应用程序来设置特定闹钟。

当手机关闭时,闹钟就会响起。重启完成后,您的应用将收到 BootCompleted 操作。重启后无需启动应用程序。

如果用户在安装后没有打开您的应用程序,则意味着他/她没有设置任何闹钟。因此,无需担心这种情况下的重启,因为重启后没有任何内容可以重置。

更新:

尝试向您的接收器添加属性android:enabled="true"。最终代码应如下所示:

<receiver android:name=".OnBootReceiver" android:enabled="true">
    <intent-filter>
        <action android:name="android.intent.action.BOOT_COMPLETED" />
    </intent-filter>
</receiver>

关于java - 即使我在重新启动后不启动应用程序,我仍然可以看到 BOOT_COMPLETED 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39683499/

相关文章:

java - 如何从 CLI 使用 apispark

java - 回收器 View 无限滚动无法正常工作

android - 从 DialogFragment 接收结果

android - CONNECTIVITY_CHANGE 广播 Android O

android - Facebook android fragment 登录

android - 如何创建即使在手机重启后也始终运行的通知?

android:使用Intent.ACTION_BOOT_COMPLETED还是...?

java - 无法使用 jackson 反序列化器反序列化 java.awt.color

java - 在 Android 的 BOOT_COMPLETED 上设置多个警报

java - "Variable not initialized"错误