Android App性能優(yōu)化之耗電優(yōu)化
一、引言
在移動(dòng)設(shè)備的使用中,電池的重要性不言而喻。對(duì)于操作系統(tǒng)和設(shè)備開(kāi)發(fā)商而言,追求更長(zhǎng)的待機(jī)時(shí)間是永恒的目標(biāo)。而對(duì)于應(yīng)用開(kāi)發(fā)者的來(lái)說(shuō),同樣不能忽視應(yīng)用的耗電問(wèn)題。若應(yīng)用耗電過(guò)多,可能會(huì)導(dǎo)致用戶流失,特別是在競(jìng)爭(zhēng)激烈的移動(dòng)應(yīng)用市場(chǎng)中。針對(duì)Android App的耗電優(yōu)化顯得尤為重要。

二、App耗電的原因及優(yōu)化方案
App耗電的原因多種多樣,以下提供幾種常見(jiàn)的優(yōu)化方案:
1. 合理運(yùn)用wake_lock鎖:此鎖是為了防止系統(tǒng)休眠以節(jié)省電量。在某些情況下,如即時(shí)通訊類應(yīng)用,需要保持網(wǎng)絡(luò)連接,此時(shí)使用wake_lock鎖是必要的。微信等應(yīng)用大量使用此鎖以確保網(wǎng)絡(luò)連接的穩(wěn)定性。
2. 使用jobScheduler2處理網(wǎng)絡(luò)請(qǐng)求:對(duì)于不急需處理的任務(wù),如圖片處理和APP下載更新,可以放在設(shè)備充電時(shí)進(jìn)行,以節(jié)省電量。
3. 計(jì)算優(yōu)化:避免使用高耗能的浮點(diǎn)運(yùn)算等,以減輕CPU負(fù)擔(dān)。

4. 數(shù)據(jù)傳輸優(yōu)化:在數(shù)據(jù)傳輸時(shí),盡量壓縮數(shù)據(jù)并使用高效的序列化技術(shù),如FlatBuffer。此技術(shù)比JSON更為高效,值得推薦使用。
三、App耗電分析所用工具
針對(duì)App耗電問(wèn)題,我們可以借助一些工具進(jìn)行分析。其中,“友盟+u-apm”應(yīng)用性能監(jiān)控平臺(tái)是一款實(shí)用的工具。它實(shí)時(shí)監(jiān)測(cè)app的性能問(wèn)題,并定位問(wèn)題所在,幫助開(kāi)發(fā)者高效解決并修復(fù)問(wèn)題。
友盟還提供了實(shí)時(shí)的應(yīng)用崩潰、ANR、自定義異常等捕獲能力,以及卡頓、啟動(dòng)分析等性能能力。支持多場(chǎng)景、多通道智能告警監(jiān)控,幫助開(kāi)發(fā)者縮短故障排查時(shí)間。友盟的云真機(jī)測(cè)試能力為開(kāi)發(fā)者提供了發(fā)版前測(cè)試、線上問(wèn)題復(fù)現(xiàn)等場(chǎng)景的使用,助力開(kāi)發(fā)者提升研發(fā)效率。
四、友盟工具的優(yōu)勢(shì)

友盟作為一款監(jiān)測(cè)工具,不僅可以幫助開(kāi)發(fā)者監(jiān)測(cè)app性能問(wèn)題,還可以減輕開(kāi)發(fā)者的負(fù)擔(dān)和壓力。其云真機(jī)測(cè)試能力、實(shí)時(shí)性能監(jiān)控、以及詳盡的崩潰報(bào)告等功能,為開(kāi)發(fā)者提供了從研發(fā)到測(cè)試的全流程支持,真正實(shí)現(xiàn)了監(jiān)控測(cè)試全流程的深度打通。移動(dòng)開(kāi)發(fā)者可以靈活地使用其測(cè)試操作界面,支持ADB調(diào)試、WEB遠(yuǎn)程調(diào)試、掃碼、抓包、虛擬定位等測(cè)試功能,為開(kāi)發(fā)者提供了極大的便利。
Android App的耗電優(yōu)化是開(kāi)發(fā)者不可忽視的一部分。通過(guò)合理的優(yōu)化方案和借助實(shí)用的工具,如友盟+u-apm應(yīng)用性能監(jiān)控平臺(tái),我們可以有效地解決App的耗電問(wèn)題,提升用戶體驗(yàn),保持用戶的忠誠(chéng)度。如何阻止Google Apps在Android后臺(tái)耗電
一、取消Google賬戶的自動(dòng)同步功能
Google的賬戶同步功能無(wú)法徹底關(guān)閉,但我們可以進(jìn)行一些設(shè)置以減輕其耗電情況。進(jìn)入“設(shè)置”選項(xiàng),找到“賬戶”選項(xiàng),取消勾選相關(guān)同步功能。盡管如此,Google Play服務(wù)在手機(jī)重啟后依然會(huì)運(yùn)行。但我們可以嘗試手動(dòng)同步,在應(yīng)用內(nèi)部取消勾選同步或通知的選項(xiàng),并刪除不必要的Google原生APP。值得注意的是,只有少數(shù)幾個(gè)APP可以被刪除,如文字轉(zhuǎn)語(yǔ)音翻譯、街景、地圖等。
二、禁止Google App的自動(dòng)啟動(dòng)

Google App并非系統(tǒng)組件,它們的存在不會(huì)影響系統(tǒng)的正常運(yùn)行。當(dāng)啟動(dòng)任何一款Google App時(shí),Google Framework和Google Play service都會(huì)自動(dòng)啟動(dòng)。為了阻止這種情況,我們可以禁止Google App的自動(dòng)啟動(dòng)。這樣做不會(huì)導(dǎo)致系統(tǒng)彈出意外停止通知。
三、禁止Google App保持喚醒
為了阻止Google App在后臺(tái)耗電,我們可以采取一些措施禁止其保持喚醒。例如,使用Wakelock Terminator、Xposed Framework的Pre App Hacking等工具。對(duì)于CM11S Kitkat 4.4.4系統(tǒng),我們可以利用AppOps工具進(jìn)行設(shè)置。進(jìn)入“設(shè)置”選項(xiàng),選擇“隱私”,然后開(kāi)啟“隱私防護(hù)”。在高級(jí)設(shè)置中,勾選“顯示內(nèi)置應(yīng)用”,并將有喚醒嫌疑的軟件的屬性更改為“總是詢問(wèn)”或“拒絕”。也要禁止Location service保持喚醒,因?yàn)樗呛碾姶髴糁弧?/p>
四、使用Greenify等工具優(yōu)化Google App
這是阻止Google Apps在Android后臺(tái)耗電的最關(guān)鍵步驟。為了完成這一步驟,我們需要三個(gè)軟件:Greenify、Greenify捐獻(xiàn)包和Wakelock detector。通過(guò)Wakelock Detector,我們可以查看哪些App正在占用系統(tǒng)資源,并了解它們已占用多長(zhǎng)時(shí)間。然后,我們可以使用Greenify來(lái)結(jié)束這些Google App的后臺(tái)運(yùn)行。我們還可以利用Greenify的“立刻休眠”功能,在使用完Google App后或開(kāi)機(jī)后干掉后臺(tái)Google服務(wù)。為了更好地管理這些任務(wù),我們可以使用Tasker創(chuàng)建自動(dòng)任務(wù),例如,在開(kāi)機(jī)20秒后自動(dòng)執(zhí)行“立刻休眠”。

五、Android 7.0的新特性:主題皮膚管理器
第一章:應(yīng)用程序抽屜的變革
在2月26日,Google Map的官方Twitter發(fā)布了一條引人矚目的介紹視頻。在這段視頻中,展示機(jī)Nexus 6P的系統(tǒng)界面引發(fā)了廣泛關(guān)注。令人驚訝的是,底部的應(yīng)用抽屜按鈕似乎消失了。這一變化引發(fā)了粉絲們的熱烈討論,紛紛留言詢問(wèn):“應(yīng)用抽屜去哪了?!”
其實(shí),早有傳聞稱新版Android N可能會(huì)去掉應(yīng)用抽屜設(shè)計(jì),采用iOS和MIUI的應(yīng)用展示方式,即所有應(yīng)用都呈現(xiàn)在桌面首頁(yè)。對(duì)于這一變革,我們難以判斷去除二級(jí)菜單會(huì)帶來(lái)更凌亂的桌面還是更高效的體驗(yàn)。但作為Android用戶,我們可以選擇優(yōu)秀的第三方桌面如Nova啟動(dòng)器,以應(yīng)對(duì)這一可能的改變。
第二章:夜間模式的回歸

在Android M的開(kāi)發(fā)者預(yù)覽版中,曾短暫出現(xiàn)過(guò)Dark Mode夜間模式,但在正式版中該功能卻被移除。在最新的Android N泄露圖中,黑色背景暗示著夜間模式的回歸。
更令人興奮的是,Google已經(jīng)公開(kāi)了夜間模式的開(kāi)發(fā)代碼,這使得開(kāi)發(fā)者可以輕松為應(yīng)用設(shè)置“暗色主題”。未來(lái),我們只需輕點(diǎn)“夜間模式”按鈕,即可從系統(tǒng)到應(yīng)用全面切換至夜間模式。這一改變不僅有助于AMOLED屏幕手機(jī)省電,也讓深夜使用手機(jī)的用戶告別了刺眼的白光。
第三章:分屏多任務(wù)及平板支持
LG和三星已推出分屏模式,Google在Android N中加入此功能亦是眾望所歸。在上一版本Android M中,分屏模式被隱藏,需特定方式激活。幸運(yùn)的是,Google的Pixel C團(tuán)隊(duì)在Reddit AMA論壇上確認(rèn)“分屏功能正在開(kāi)發(fā)中”。
對(duì)于Android平板用戶來(lái)說(shuō),分屏多任務(wù)更為適用。團(tuán)隊(duì)也宣稱,Android平板在Android N中將獲得更好的支持,而不僅僅是簡(jiǎn)單的拉伸應(yīng)用界面。關(guān)于Chrome OS的聯(lián)動(dòng)猜想、DPI切換和界面調(diào)整,我們只能在Google I/O那天尋找答案。

第四章:觸控筆的支持
在三星公布的文檔中,我們發(fā)現(xiàn)Android N將支持系統(tǒng)自帶的觸控筆接口,不再使用S PEN專屬接口。三星過(guò)去曾關(guān)閉自家的節(jié)電模式和指紋識(shí)別接口,如今又關(guān)閉了觸控筆接口。這一變革對(duì)于支持觸控筆的Android設(shè)備用戶來(lái)說(shuō),無(wú)疑是一個(gè)好消息。
第五章:Doze省電模式的升級(jí)
Doze省電模式首次亮相于Android M,通過(guò)關(guān)閉應(yīng)用后臺(tái)達(dá)到省電效果。在實(shí)際體驗(yàn)中,Doze模式表現(xiàn)出色,但在操作體驗(yàn)和用戶自定義方面仍有不足。許多用戶選擇使用第三方應(yīng)用如綠色守護(hù)來(lái)控制后臺(tái)應(yīng)用耗電。我們期待Android N能提供一個(gè)更好用的Doze省電模式,讓用戶體驗(yàn)更加便捷。重新設(shè)計(jì)的通知欄——Android N新面貌的初探
=======================

一、通知欄的新設(shè)計(jì)概覽
一張Android N的通知欄模擬圖揭示了新界面設(shè)計(jì)的重要信息。國(guó)外媒體Android Police在獲得開(kāi)發(fā)樣機(jī)圖后,為我們大致模擬出了新版界面截圖。這個(gè)新的通知欄設(shè)計(jì)似乎預(yù)示著更大的信息量承載和更便捷的操作體驗(yàn)。
二、通知欄的詳細(xì)解讀
根據(jù)爆料,新的通知欄設(shè)計(jì)已經(jīng)開(kāi)始嘗試承載更多的信息量。長(zhǎng)按通知后,用戶可以查看詳細(xì)的通知內(nèi)容。而在快速設(shè)置頁(yè)面中,我們可以看到,快捷按鈕不僅鋪滿整個(gè)頁(yè)面,還支持分頁(yè),不再像過(guò)去那樣只支持固定數(shù)量的快捷按鈕。這種設(shè)計(jì)無(wú)疑為用戶提供了更大的便利。
三、更多玩法的指紋識(shí)別

隨著Nexus 5X和Nexus 6P的發(fā)布,Google開(kāi)始為Android提供指紋支持。在Android 6.0中,關(guān)于指紋的接口也在逐步完善。目前,指紋主要用于Play Store和鎖屏應(yīng)用。我們期待在Android N中,能通過(guò)指紋解鎖完成更多的事情。借鑒iOS的Touch ID,未來(lái)Android用戶或許可以通過(guò)指紋便捷地查看Google相冊(cè)中的隱私圖片,或直接解鎖啟動(dòng)私人應(yīng)用。
四、為虛擬現(xiàn)實(shí)助力
Google正致力于打造一款不需要額外硬件的頭戴式VR設(shè)備。與此市面上大部分VR產(chǎn)品的軟件開(kāi)發(fā)都與Android系統(tǒng)有所聯(lián)系,甚至Google自家的VR設(shè)備也可能需要Android的支持。我們有理由相信,Google會(huì)為新版本的Android系統(tǒng)在VR方向上提供更多系統(tǒng)層面的支持。
五、Now on Tap的未來(lái)發(fā)展
Now on Tap作為Android M的重磅功能,去年收獲了業(yè)界好評(píng)。該功能基于不同情景提供對(duì)應(yīng)信息,通過(guò)識(shí)別正在運(yùn)行的app中的內(nèi)容,提供針對(duì)性的建議和資料。在Android N中,我們期待Now on Tap能發(fā)揮更大的作用。畢竟,“上下文感知”和“基于情景”都是人類智能的重要能力。未來(lái),當(dāng)我們打開(kāi)相機(jī)時(shí),它或許能為我們找尋鏡頭中的關(guān)鍵信息,而不僅限于設(shè)定日歷提醒或搜索維基百科等簡(jiǎn)單功能。

以上就是關(guān)于Android N的新特性的一些預(yù)測(cè)和解讀。隨著技術(shù)的不斷進(jìn)步和持續(xù)創(chuàng)新,我們期待Google能在未來(lái)的Android系統(tǒng)中帶來(lái)更多令人驚喜的功能和改進(jìn),進(jìn)一步提升用戶的使用體驗(yàn)。