当我使用广播接收器用于SCREEN_ON时,我能获得屏幕打开的原因吗?(用户按下了电话上的开/关按钮,或者是某些应用程序,例如闹钟响铃)?
答案 0 :(得分:1)
PowerManagerNotifier(Notifier.java)是系统打开屏幕时广播ACTION_SCREEN_ON的地方。
mScreenOnIntent = new Intent(Intent.ACTION_SCREEN_ON);
mScreenOnIntent.addFlags(
Intent.FLAG_RECEIVER_REGISTERED_ONLY | Intent.FLAG_RECEIVER_FOREGROUND);
正如您从上面所看到的那样,广播的意图不包含任何有关打开原因的信息。因此,您无法区分ACTION_SCREEN_ON的BroadcastReciever原因。