当前位置: 首页 > 知识库问答 >
问题:

BootReceiver不能在所有android设备中工作

贲功
2023-03-14

我一直在努力克服Boot_complete接收器不能在某些设备中工作的问题。

比如Vivo设备,它们有iManager应用程序和自动启动管理器。用户可以在设备启动时从自动启动切换应用程序。

我应该使用什么连同下面的意图过滤器重新启动我的服务后,设备重新启动。

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

共有1个答案

元昊苍
2023-03-14

我和我的团队在面对类似的问题时发现了一件事。您可以监控usb状态,如下所示:

<receiver
    android:name=".MyReceiver"
    android:enabled="true">
    <intent-filter>
        <action android:name="android.hardware.usb.action.USB_STATE" />
    </intent-filter>
</receiver>

如果我没记错的话,这将在常规的boot_completed操作之前发送一个广播,告诉您有没有USB连接。

一些制造商使用他们自己的boot_completed版本,您可以在这里阅读,但usb_state是一种替代方法,这取决于您想要做的事情。请注意,使用此方法可以获得多个广播!

 类似资料:
  • 是否有其他方法启用它?

  • 我是Java和Android开发人员的新手,来自更多的C++背景。我用这个问题作为指导创建了一个kiosk/cosu应用程序。我将应用程序设置为设备管理,使用

  • 这个小部件在模拟器4.1.2上工作得很好,当安装在真正的设备上时,它甚至不会显示在小部件列表上,就像安装了一样,但我不能让它正常工作。 下面是manifest.xml 和小部件提供程序

  • 我正在用Libgdx做一个简单的平台游戏。。。我让玩家向左移动,向右移动,然后跳跃。该代码在桌面上运行良好,但在Android设备上,当玩家向左或向右移动时,不会触发跳转。看起来很奇怪。这是我的密码。。。 私有空updatePlayerForUserInput(浮点deltaTime){ 我从mzencher在 https://github.com/libgdx/libgdx/blob/maste

  • 我是android新手,我能够在kotlin中为我的应用程序设置firebase。如果我在Nexus 5X API 27 emulator中运行该应用程序,我就能够获取数据库,但当我在实际设备三星S5(Google play Services V 12.5.29,android V 5.0)中运行该应用程序时,我无法获得addValueEventListener回调。 Gradle文件: 我知道这

  • 我手边有一个新的项目,我需要制作两个android应用程序 1)主控制器应用程序(安装在一个设备中,说它的名字是X) 2)子子应用程序(安装在需要由X控制的设备中) 因此,我想了解一个像(2)这样的android设备是如何从另一个像(1)这样的设备中完全管理的(例如,阻止应用程序或使它们在一定时间内可以访问/阻止调用/跟踪用户位置)。到目前为止,我搜索了谷歌,询问了我的学长,但没有一个能够帮助我,