android待機
⑴ 請推薦一款android智能手機,待機時間要長!
榮耀9X不錯的,以下是手機參數:
1.電池:電池容量:4000mAh(典型值),標配5V/2A充電器,理論充電時間約2小時,續航能力提升,玩一天還有電!
2.拍照:後置攝像頭:4800萬+200萬像素,f/1.8光圈,支持自動對焦(相位對焦/反差對焦),前置攝像頭:1600萬像素,f/2.2光圈。細節放大也清晰,隨時隨地拍夜景大片。
3.屏幕:屏幕尺寸6.59英寸,屏幕色彩1670萬,解析度:1080*2340,觀影時色彩更鮮明,細節更清晰,光感更悅目。
4.性能:採用Kirin 810八核處理器,搭載GPU Turbo3.0革命性游戲加速技術,讓你的手機隨時變身「游戲機」,重載游戲輕松高幀運行。
您可以登錄華為商城官網了解更多信息,進行選擇。
⑵ Android 休眠喚醒頻繁問題分析的一些工具
大家都知道目前的手機,平板等電子設備耗電都比較大,Android系統因為歷史和開源等原因,一直對耗電支持的不是很好。特別現在很多apk完全不care耗電,動不動給你裝上全家桶,還會相互間互相喚醒進程,簡直就是流氓軟體。從現有的應用來說,為了他們商業目的,有很多是類似要求長期後台運行的,或者定時運行的,這些服務對耗電影響都非常大。
雖然Android每次版本大更新,都對其進行了優化,加入了很多特性。比如在Android 5.0加入了JobScheler API機制(批處理);在Android 6.0加入App Standby(應用待機),Doze休眠機制;並且在Android7.0谷歌對Doze休眠機製做了進一步的優化,只要手動在後台刪掉應用卡片,關屏後該應用就會被很快深度休眠。
但是應用開發工程師由於各種原因沒有使用新的特性,導致用戶感覺設備耗電還是很大。所以國內很多手機廠家都有對android系統的耗電進行優化,從原理來說,目前這些廠家也是主要對兩方面進行優化:
1.減少定時休眠喚醒頻率,比如合並應用申請的定時喚醒鬧鍾來喚醒已經休眠的設備。
2.減少wake lock的頻率和時間。只要系統中存在任一有效的wake_lock,系統就不能進入深度休眠,但可以進行設備的淺度休眠操作。wake_lock一般在關閉lcd、tp但系統仍然需要正常運行的情況下使用,比如聽歌、傳輸很大的文件等。
可通過如下列印來確認喚醒源:
<4>[ 1321.989235] wakeup gpio0: 00000010
具體意思如下:
gpio0:表示是GPIO0
00000010:表示的是GPIO分組從高到低四個位元組分別是:DCBA,每個位元組的0-7bit就表示D7-D0 C7-C0 B7-B0 A7-A0.
從這里可以看出上面喚醒的GPIO是:GPIO0 PA4,對應的是RTC的中斷腳。
通過mpsys alarm命令列印可以看到哪個應用喚醒次數比較多,和總共佔用的時間:
這里的喚醒統計的是:應用申請 RTC_WAKEUP 或 ELAPSED_REALTIME_WAKEUP 的Alarm。不管系統是否在休眠,都會產生Alarm,所以這里的Alarm次數與第一章中說的kernel中統計的被RTC中斷喚醒的次數是匹配不上的,前都會大於後者。
看下Android系統定義的休眠喚醒不同的類型。
這個信息可以通過Project Volta里的工具historian.py將其圖形化顯示。
先導出bugreport
將其轉換成圖形化結果(目前好像只有網路瀏覽器才能打開這個html)
簡單說明如下:
1.橫軸是時間
2. wifi_scan指的是wifi處於掃描
3. wifi_running指的是wifi打開狀態
4. screen指的是屏亮的狀態
5. plugged指的是插入外設
6. wake_lock指的是kernel中被鎖住的狀態
可通過screen與wake_lock來初步確認系統是否被喚醒,如果screen是關的,然後又有wake_lock,也表明系統被喚醒並被鎖住一段時間。
把上層的喚醒和wifi喚醒都關了,測試了39個小時消耗30%電量
有以下幾個問題:
1.喚醒次數的確少了,但是healthd每10分鍾喚醒在圖上體現不出來
2.有2次喚醒後,系統被鎖住10多鍾才休眠下去
查看Alarm狀態,可以很明顯看到上層沒有再去wake up
但是驅動中還看到有被RTC喚醒,經過驗證是healthd喚醒的,不插充電的時候10分鍾,插充電的時候1分鍾間隔。這個喚醒後就更新battery的信息,上層Baterry更新下,UI刷新下。
系統被鎖住10幾分鍾,通過log分析在wifi斷開的時候,gms剛好去連接伺服器,通訊很久造成wake 比較久。從下面的信息可以判斷,系統目前wake lock線程最多的是gms線程。
Wake lock 在Android的電源管理系統中扮演一個核心的角色,wakelock是一種鎖的機制, 只要有task拿著這個鎖, 系統就無法進入休眠, 可以被用戶態進程和內核線程獲得。這個鎖可以是有超時的或者是沒有超時的, 超時的鎖會在時間過去以後自動解鎖。如果沒有鎖了或者超時了, 內核就會啟動標准Linux的那套休眠機制機制來進入休眠。
提高電池續航,也就意味著減少系統和程序的電量消耗。為此 經過測試發現,每次喚醒設備,1-2秒的時候,都會消耗2分鍾(個別應用更久)的待機電量,可見每次喚醒設備的時候,不僅僅是點亮了屏幕,系統也在後台處理很多事情。
電池消耗比較大,從系統的行為上分析,有兩個地方影響最大
1.系統在被喚醒的期間,被一些應用wake lock比較久,造成很久時間無法再進入二級休眠。
2.系統頻繁的被喚醒,系統被喚醒目前包含三個喚醒源
(1).系統上層通過AlarmMananger的介面注冊rtc喚醒,
(2).wifi晶元自動喚醒,
(3).電池healthd定頻喚醒。
所以如果應用比較多的時候,應用在喚醒期間動作比較多,容易造成系統被wake lock,從而不會很快的進入二級休眠。
通過上述的分析來看,系統可以優化的地方有4個方面。
1).查看系統wake lock最多的線程,看能不能優化。
2).系統上層過濾的應用喚醒行為,從而降低喚醒頻率。AlarmManager包含四種類型定時策略,AlarmManager.ELAPSED_REALTIME、AlarmManager.ELAPSED_REALTIME_WAKEUP、AlarmManager.RTC、AlarmManager.RTC_WAKEUP、AlarmManager.POWER_OFF_WAKEUP。
其中應用申請RTC_WAKEUP或ELAPSED_REALTIME_WAKEUP的Alarm在系統休眠的情況下會喚醒系統。通過建立白名單或者黑名單的方式過濾此種應用的喚醒行為
3). 定時批處理一批操作,壓縮硬體喚醒時間,就像心跳一樣,讓硬體充分休息,還有就是精確監測應用請求,智能安排請求執行時間,讓資源利用最大化。
4).擴大healthd的定頻喚醒間隔(適度不然造成電池電量不準)
最後改一張調整過的電池狀態圖:
⑶ 安卓12怎麼關閉待機
安卓12關閉待機方法閉跡者。
1、進入手機設置,在設置轎薯頁面選擇顯示。
2、在顯示頁面找到休眠州拆選項,在彈出菜單的選項里選擇永遠不要。
⑷ 安卓手機怎麼設置待機時顯示時間,就是屏幕黑了以後還可以顯示時間
安卓手機怎麼設置待機時顯示時間的方法為:設置裡面---常規--個性化設置--主題模式--節電保護--選擇日期和時間
1、Android是一種基於Linux的自由及開放源代碼的操作系統,主要使用於移動設備,如智能手機和平板電腦,由Google公司和開放手機聯盟領導及開發。
2、尚未有統一中文名稱,中國大陸地區較多人使用「安卓」或「安致」。Android操作系統最初由Andy Rubin開發,主要支持手機。2005年8月由Google收購注資。
3、2007年11月,Google與84家硬體製造商、軟體開發商及電信營運商組建開放手機聯盟共同研發改良Android系統。隨後Google以Apache開源許可證的授權方式,發布了Android的源代碼。
4、第一部Android智能手機發布於2008年10月。Android逐漸擴展到平板電腦及其他領域上,如電視、數碼相機、游戲機等。2011年第一季度,Android在全球的市場份額首次超過塞班系統,躍居全球第一。
5、 2013年的第四季度,Android平台手機的全球市場份額已經達到78.1%。[1] 2013年09月24日谷歌開發的操作系統Android在迎來了5歲生日,全世界採用這款系統的設備數量已經達到10億台。
⑸ 安卓待機應用狀態四種模式
分別是active, working_set, frequent, rare。
待機狀態active為最高等級。rare為最低。
待機狀態均指手機或電腦等電子設備的開機但是不進行任何實質性工作(即不對文件和程序的各種操作)的狀態。
待機是將當前處於運行狀態的數據保存在內存中,機器只對內存供電,而硬碟、屏幕和CPU等部件則停止供電。由於數據存儲在速度快的內存中,因此進入等待狀態和喚醒的速度比較快。不過這些數據是保存在內存中 ,如果斷電則會使數據丟失