我有一个监听 USB_DEVICE_ATTACHED 广播意图的活动,它在用户插入我的 USB 设备并选择我们的应用程序时启动。我的问题是 android 主机设备每天重启一次(通常是凌晨 4 点左右),此时附加的 USB_DEVICE_ATTACHED 意图也会自行触发。
在这种情况下,我绝对不想启动我的活动,因为它不知道如何关闭自己。我怎样才能防止这种情况发生?我尝试使用 PowerManager.isScreenOn() 布尔值来不启动我的活动(目标是 API 17),但它认为屏幕确实打开了。
PowerManager powerManager = (PowerManager) getSystemService(POWER_SERVICE);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT_WATCH) {
if (powerManager.isInteractive()) {
startActivity(intent);
}
}
else{
//noinspection deprecation
if (powerManager.isScreenOn()) {
startActivity(intent);
}
}