如何 运行 在 android 11 上启动广播接收器

how to run Boot Broadcast Receiver on android 11

我实际上正在开发设置警报并将警报数据存储到房间数据库中的警报应用程序,我想在 phone 重新启动后重新安排我的警报。 一切正常,但它在 android 11.In android 上不起作用 11 引导接收器未触发,在其他设备中引导接收器触发并设置所有存储在数据库中的警报

谢谢

我正在使用这个代码

 override fun onReceive(context: Context?, intent: Intent?) {
    if (Intent.ACTION_BOOT_COMPLETED == intent?.action)
    {
        

    }
}

希望您设置了以下权限

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

并为您的接收器添加了 intent 过滤器,如下所示

 <intent-filter>
    <action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>

如果以上的东西都具备了。然后也试试下面的东西

  1. 安装您的应用程序后点击该应用程序,因为直到您的应用程序被启用,您将无法收到启动完成操作

  2. 检查如下条件

    if (Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction()))

在Android11需要重启后打开应用才能接收Boot_Complete_receiver