1. 程式人生 > >Android6.0 設定永不休眠

Android6.0 設定永不休眠

在開發中,有些方案需要讓螢幕永不休眠,有兩種方法可以去設定,

第一種方法直接改frameworks/base/packages/SettingsProvider/res/values/defaults.xml

<integer name="def_screen_off_timeout">2147483647</integer> 這個值是通過原始碼分析打印出來的。

第二種方法:設定<integer name="def_screen_off_timeout">-1</integer>

修改packages/apps/Settings/src/com/android/settings/DisplaySettings.java

    private void updateTimeoutPreferenceDescription(long currentTimeout) {
        ListPreference preference = mScreenTimeoutPreference;
        String summary;
        if (currentTimeout < 0) {
            // Unsupported value
            //add start.
            final CharSequence[] values = preference.getEntryValues();
            int best = (values.length - 1);
            summary = entries[best].toString();
            //add end.
        } else {
            final CharSequence[] entries = preference.getEntries();
            final CharSequence[] values = preference.getEntryValues();
            if (entries == null || entries.length == 0) {
                summary = "";
            } else {
                int best = 0;
                for (int i = 0; i < values.length; i++) {
                    long timeout = Long.parseLong(values[i].toString());
                    if (currentTimeout >= timeout) {
                        best = i;
                    }
                }
                if (currentTimeout == Integer.MAX_VALUE)
                    summary = entries[best].toString();
                else
                    summary = preference.getContext().getString(R.string.screen_timeout_summary,
                            entries[best]);
            }
        }
        preference.setSummary(summary);
    }

個人推薦第二種方法,這樣做比較通用,第一種可能會由於不同的平臺,會導致這個數值不對,如果數值不對,可以通過第二種方法把最大的值打印出來(其實這個值是Integer.MAX_VALUE),在去xml下設定。

相關推薦

Android6.0 設定永不休眠

在開發中,有些方案需要讓螢幕永不休眠,有兩種方法可以去設定, 第一種方法直接改frameworks/base/packages/SettingsProvider/res/values/defaults.xml <integer name="def_screen_off

android 設定 永不休眠

如果想第一次燒錄系統開機就是永不休眠。這個需要修改def_screen_off_timeout = -1,在android 第一次開機的時候會去讀取這個值, 在檔案SettingsProvider/src/com/android/providers/setti

android6.0設定-電池-智慧省電

                                              MTK Android6.0設定中的智慧省電預設關閉         對於大多部分的setting中的配置資訊,在default.xml檔案中都有配置,但是也有一些設定中的配置資

Android6.0 Reset恢復出廠設定流程分析

點選Settings應用中的恢復出廠設定按鈕後流程分析:先使用grep命令搜尋"恢復出廠設定"字串,找到相應的佈局檔案: packages/apps/Settings/res/xml/privacy_settings.xml <PreferenceScree

android6.0動態許可權設定

android6.0後就需要手動獲取許可權。主要有以下步驟:1、在menifests檔案加入相應許可權,如:<!-- 獲取照相機拍照許可權 --> <uses-permission a

android6.0動態許可權的設定——幾行程式碼搞定

只需要兩步走: 一、程式碼請求許可權 /** * android6.0執行時許可權,檢測 */ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {//6.0以上 int checkPermission =

Android 從相簿或者拍照設定頭像,相容Android6.0後許可權問題

                                    平時開發中我們會需要設定使用者頭像  從手機相簿或者拍照設定,在Android6.0以前還不用考慮許可權問題,到了6.0後還需要考慮許可權問題,這裡我們就來給大家一起處理下。有些可能不完善大家自己完善

Android6.0設定許可權時候的SecurityException異常的處理

說來也巧了,今天碰到了一個特別奇怪的問題。上午寫了一個小demo其中有一個功能是獲取通訊的,大家肯定知道這時候肯定要新增一個許可權: <!-- 讀聯絡人許可權 --> <uses-permission android:name="andr

[RK3288][Android6.0] Audio的音量設定流程小結

Platform: Rockchip OS: Android 6.0 Kernel: 3.10.92 說明一:  AudioManager提供了兩個調節音量介面 adjustSuggestedSt

Android6.0以前及以後的許可權設定

今早看了鴻洋大神公眾號的一篇關於許可權的文章,記錄下,方便自己記憶! Android 6.0之後 Android 6.0(API 23)以後加入了許可權機制,加入了9組危險許可權,包括呼叫相機,讀取聯絡人資訊,讀取位置資訊,打電話,錄音等等,涉及使用者隱私的許可權。  具體操

Android6.0 移除電池設定

Android6.0 移除設定中電池選項,只要關注setting app下有關電池的xml和程式碼,下面是我的具體做法, 1.註釋packages/apps/Settings/AndroidManifest.xml下電池相關模組 +<!--

Android6.0 如何新增更改系統設定許可權

在Android6.0以後,有很多許可權都需要開發者在程式碼中主動去申請,因此出現了很多申請6.0許可權的框架。 但是我在利用框架申請更改系統設定許可權時(如更改手機來電鈴聲需要此許可權),一般的框架沒有用。因此需要自己手動利用程式碼去申請,程式碼如下: if (Bui

Android6.0 亮屏滅屏流程(DisplayPowerControler、WMS)(二)亮度設定

上一篇部落格我們主要分析了在setScreenState中呼叫PhoneWindowManager的一些流程,在setScreenState中先是呼叫了DisplayPowerState的setScreenState函式。上篇部落格我們沒有分析,這篇部落格我們先從這個函式開

Android6.0之後要修改設定中的系統開關的方法

Android6.0之後系統對於安全性問題做了很多設定,如:想修改系統 的橫豎屏,螢幕亮度等等和系統設定相關的問題,在網上收集到的一些請求許可權的方式是沒有用的,對於請求需要WRITE_SETTINGS許可權的需要用以下方式來實現: Intent inte

Android6.0許可權設定

  今天寫關於圖片讀寫的程式碼時,發現在華為MT7這個手機上讀寫檔案失敗,剛開始以為自己的許可權寫錯了,後來的經過多方查詢,發現並不是程式碼的問題,而是Android6.0在許可權處理上做了改動。在6.0之前的版本,需要什麼樣的許可權只需要在Manifest檔案

Android6.0之前和之後設定PopupWindow點開空白和返回鍵消失和禁止消失的設定

protected void popupIN(View v, Window window, LayoutInflater inflater, Context context) { this.context=context; this

Android6.0機型上調用系統相機拍照返回的resultCode值始終等於0的問題

cti man img pan mission get target lan out 版權聲明:本文為博主原創文章,未經博主允許不得轉載。 正常情況下調用系統相機拍照: 如果拍照後點擊的是“確定”圖標,返回的resultCode = -1(Acti

Android6.0運行時權限(基於RxPermission開源庫)

art cti 將不 轉載 誤差 title 特殊 什麽是 roi 版權聲明:本文為博主原創文章,未經博主允許不得轉載。 前言   在6.0以前的系統,都是權限一刀切的處理方式,只要用戶安裝,Manifest申請的權限都會被賦予,並且安裝後權限也撤銷不了。   And

Android設置系統開機自己主動永不休眠

sequence deb false listener apps orm enc request timeout android4.2系統增永不休眠同一時候隱藏休眠選項 1. android\frameworks\base\packages\SettingsPro

Android6.0權限管理以及使用權限該註意的地方

結果 res hone grant 設備 -m hid 頁面 start Android 6.0 Marshmallow首次增加了執行時權限管理,這對用戶來說,能夠更好的了解、控 制 app 涉及到的權限。然而對開發人員來說卻是一件比較蛋疼的事情。須要兼