防止屏幕睡眠

时间:2013-12-02 14:21:12

标签: android adb

Android v4.2.2。我试图阻止屏幕进入睡眠状态。我尝试了一些改变db中相关设置的事情:

adb shell "sqlite3 /data/data/com.android.providers.settings/databases/settings.db  \"update system set value='-1' where name='screen_off_timeout'\";"

但那不起作用 - 屏幕几乎立即进入睡眠状态。如果我转到设置应用程序,则无法禁用它。相反,它的范围从15s到30m。

我还尝试在应用程序中设置KEEP_SCREEN_ON FLAG,但在切换到新活动时停止工作。

还有什么我可以尝试的。我希望数据库设置可以完成这项工作。这是我的系统数据库。也许我缺少一个可以插入的设置?

1|volume_music|11
2|volume_ring|5
3|volume_system|7
4|volume_voice|4
5|volume_alarm|6
6|volume_notification|5
7|volume_bluetooth_sco|7
8|mode_ringer_streams_affected|174
9|mute_streams_affected|46
10|vibrate_when_ringing|0
11|dim_screen|0
13|dtmf_tone_type|0
14|hearing_aid|0
15|tty_mode|0
16|screen_brightness|102
17|screen_brightness_mode|0
18|window_animation_scale|1.0
19|transition_animation_scale|1.0
20|accelerometer_rotation|1
21|haptic_feedback_enabled|1
22|notification_light_pulse|1
23|dtmf_tone|1
24|sound_effects_enabled|1
26|lockscreen_sounds_enabled|1
27|pointer_speed|0
28|next_alarm_formatted|
29|alarm_alert|content://media/internal/audio/media/5
30|notification_sound|content://media/internal/audio/media/7
31|ringtone|content://media/internal/audio/media/9
32|volume_music_headset|10
33|volume_music_last_audible_headset|10
34|volume_music_headphone|10
35|volume_music_last_audible_headphone|10
36|time_12_24|24
37|date_format|dd-MM-yyyy
39|stay_on_while_plugged_in|1
45|screen_off_timeout|-1

3 个答案:

答案 0 :(得分:6)

您的设置数据库包含系统设置的默认超时,该超时可能很低,因此设备由于超时值较低而立即进入休眠状态。您可以发出adb shell命令以增加屏幕超时。

adb shell settings put system screen_off_timeout 60000

注意:60000 = 1分钟

您还可以使用所需的超时更新设置db,然后将db推送回设备,但它需要root。以上命令不需要设备被植根。

答案 1 :(得分:1)

这与Activity有关,DB没有影响。只需将android:keepScreenOn="true"添加到layout

中的xml即可

答案 2 :(得分:0)

你试过这个吗?

PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
 PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.SCREEN_DIM_WAKE_LOCK, "My Tag");
 wl.acquire();

有关详情,请点击此链接http://thiranjith.com/2012/02/22/android-prevent-screen-timeout/