Android 警报管理器在重启设备或从后台终止应用程序后取消

标签 android alarmmanager alarm

我正在开发闹钟应用。当我设置闹钟并重新启动设备时,闹钟没有响起,并且在某些特定设备(xiomi note 4 和 samsung s5)中发生。

我的注册接收器 list :

 <receiver
        android:permission="android.permission.RECEIVE_BOOT_COMPLETED"
        android:enabled="true"
        android:exported="true"
        android:process=":remote"
        android:name="com.electrovese.alarm.AlarmReceiver.AliveAllAlarmRecever">
        <intent-filter>
            <action android:name="android.intent.action.BOOT_COMPLETED" />
            <action android:name="AliveAllAlarmRecever"/>
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </receiver>

谢谢。

最佳答案

那是因为您需要告诉 Android 在设备重启时您有一些接收器要运行。你可以这样做:

第 1 步:创建接收器:

class AlarmRebootReceiver : BroadcastReceiver() {

    override fun onReceive(context: Context?, intent: Intent?) {
        if (intent?.action.equals("android.intent.action.BOOT_COMPLETED")) {
            // oh well, device rebooted. do what you have to do here
    }
}

之后,只需像这样注册即可显示:

<receiver android:name=".background.AlarmRebootReceiver"
                  android:enabled="true"
                  android:permission="android.permission.RECEIVE_BOOT_COMPLETED">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED"/>
            </intent-filter>
        </receiver>

完成!

关于Android 警报管理器在重启设备或从后台终止应用程序后取消,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33797001/

相关文章:

ios - 自定义警报通知 IOS 保持应用程序运行

python - 0.5秒后如何在python 2.4中发出警报信号

java - 使用标准格式的时间值启动 AlarmManager 的最简单方法(ex 7 :30)

android - 即使在 Android Wear 中使用前台服务和部分唤醒锁定,传感器数据也会在屏幕关闭时暂停

android - 如何在 Android XML 可绘制文件中定义圆形?

android - 如何以编程方式设置android :password ="true" or false

Android 如何根据我的 sqlite 数据库中设置的时间设置警报?

android - 在应用程序外部显示模态消息并在一段时间后自行关闭

java - 闹钟不会停止响 - 取消按钮不起作用

android - 从联系人中检索 IP 地址