偶吧歐尼代言的三星大屏不到一天就沒電怎么辦思密達?智能手機的電量問題越來越成為手機使用中的瓶頸。你可知道,手機掉電快的元兇正是手機軟件自啟,關掉的應用抓住一切機會默默自啟,努力刷存在感。不光耗你的電量、偷你的流量、卡你的手機甚至還半夜推送通知,最近處女座傷不起的技術帝默策,熬夜狂測防自啟軟件,容不得一個耗電APP后臺運行,尋找讓手機省電大招,下面就獻上默策大牛的吐血巨作,還原手機費電真相:
科普:這些情況都是手機軟件自啟
作為手機達人的你,以下的情況肯定遇到過:
場景一:手機剛剛開機,某視頻軟件就立即彈出通知欄,XXX電視劇第4季已更新(開機自啟)
用戶獨白:奇怪,我剛開機還沒有啟動你,你就能給我發(fā)通知了?
場景二:深更半夜,昏睡彌留之際,手機突然發(fā)出類似短信或者微信的提示音,暗自竊喜,哪個MM這么晚想我了。打開手機一看,某某購物,8折促銷。
(后臺運行,夜間騷擾)
用戶獨白:靠~~玩我呢吧,大半夜的誰買你的破東西啊,失望。
場景三:手機收到提示信息,XX軟件新版本已經(jīng)為您下載完畢,是否立即安裝?
用戶獨白:尼瑪,我的流量啊,誰讓你更新的?我都半年沒用過你了,你怎么自己就下載更新了,更新個毛啊。(后臺運行,消耗流量)
場景四:早上拿著剛剛充滿電的手機去上班,擠上了地鐵,心想慢慢上班路,唯有游戲可以解憂,你準備玩會《Dota傳奇》,于是掏出手機,好燙啊,解鎖屏幕,不是吧,還剩20%的電量,太坑爹了,副本還沒下呢,打開正在運行的應用程序一看嚇一跳,大量的后臺運行程序還在運行中。(后臺運行,大量消耗電量)
當安卓手機剛剛重啟之后,或者安卓手機聯(lián)網(wǎng)狀態(tài)發(fā)生切換之后,又或者手機使用了很久一直沒有重啟過的時候,你會發(fā)現(xiàn)手機后臺有很多應用,根本就不是你主動運行的,這些應用軟件,在手機后臺偷偷摸摸的運行著,有的表現(xiàn)在通知欄彈廣告推送,有的則在后臺大量消耗數(shù)據(jù)流量、手機電量,有的還會在深夜打攪用戶。
揭秘:手機軟件自啟原理
大家都會想知道,這些軟件不是我主動運行的,到底是如何自己運行起來的呢?接下來我們將簡單講講軟件自啟的方式和原理。
以下內(nèi)容有些偏技術,讀起來可能有些晦澀,還請耐心拜讀。
不過在介紹之前,先要鋪墊一下:Android四大基本組件分別是Activity,Service服務,Content Provider內(nèi)容提供者,BroadcastReceiver廣播接收器,每個組件都是可以實現(xiàn)自啟的,那么自啟的方式也就有以下4種方式:
1、 通過打開activity,實現(xiàn)自啟
2、 通過廣播實現(xiàn)自啟
3、 通過服務實現(xiàn)自啟
4、 通過Content provider實現(xiàn)自啟
方式1,打開activity實現(xiàn)自啟,某程序通過運行一段命令,通過直接打開指定應用的activity的方式來實現(xiàn)。例如很多程序當手機連上電腦后,某些應用就直接被運行起來了。
舉例:通過運行adb shell am start com.sina.weibo/.MainTabActivity
微博就可以被運行起來了。
方式2,通過廣播實現(xiàn)自啟,這種方式是目前最普遍的,也是使用最多的實現(xiàn)自啟的方式,當目標應用通過對指定的廣播注冊了receiver,該廣播觸發(fā)后,注冊了該廣播的應用就會被喚醒并運行起來,從而實現(xiàn)了自啟。
具體點說,系統(tǒng)重啟后會發(fā)送一條系統(tǒng)廣播給所有的應用,該廣播名稱為android.intent.action.BOOT_COMPLETED。有些應用注冊了該廣播的receiver,當應用收到了這條廣播后,就會自動運行起來。
舉例:確保手機上的WEIBO應用處于未運行的狀態(tài),(在設置的應用程序管理中停止微博)運行以下命令。
adb shell am broadcast -a android.intent.action.BOOT_COMPLETED com.sina.weibo/.BootCompletedReceiver
這時候你會發(fā)現(xiàn)微博應用已經(jīng)在后臺被運行起來了。
方式3,通過服務實現(xiàn)自啟,這種方式也很普遍,與第二種類似,也是在manifest里面定義了服務,當這服務被運行后,相應的進程也會被運行起來。
舉例:確保手機上的WEIBO應用處于未運行的狀態(tài),(在設置的應用程序管理中停止微博)運行以下命令。
am startservice -n com.sina.weibo/.business.WeiboService
你會發(fā)現(xiàn)微博應用也已經(jīng)在后臺被運行起來了。
方式4,通過注冊Content provider實現(xiàn)自啟。也就是說,應用自己本身注冊了provider,當其他應用需要調(diào)用這個provider的時候,這個應用自己也就被運行起來了,從而實現(xiàn)了自啟。例如手機淘寶應用就注冊了如下provider com.taobao.tao.proxy.TBLocationContentProviderProxy
當這個provider被其他應用調(diào)用的時候,手機淘寶也會自動運行起來
支招:多款工具幫你手機防自啟
我們簡單介紹了實現(xiàn)自啟的方式,那么我們有沒有辦法去控制那些我們并不希望自動運行起來的應用,不去自啟呢?答案是肯定的,目前很多安全類和工具類的應用實現(xiàn)了對應用自啟的攔截。下面我們介紹一下這些工具。
這些工具主要包括
LBE安全大師
360手機衛(wèi)士極客版
金山手機毒霸
百度衛(wèi)士
騰訊管家等等
LBE的自啟管理
360 手機衛(wèi)士極客版(原360手機殺毒)的自啟管理
競賽:尋找最爽防自啟軟件
接下來大家可能會問,介紹了這些款軟件都有禁止自啟的功能,是不是隨便裝哪款都可以呢?哪款軟件效果更好呢?小編推薦安裝哪款呢?總不能同時都裝了吧。接下來,小編將為您進行更加詳細的逐一評測。
評測環(huán)境:三星NOTE3(N9002),安卓4.3
測試策略:選擇了29款使用量比較大的應用進行逐一的單品對比,驗證自啟攔截成功率以及是否影響正常的手動運行。
測試方法:開啟各安全軟件的禁止自啟功能后,對目標程序設置為禁止自啟,再通過adb shell am startservice 和adb shell am broadcast命令去模擬廣播和服務,觸發(fā)各個待測應用程序注冊的廣播和服務,從而實現(xiàn)自啟的目的。
驗證方法:查看運行中的應用程序(包括緩存的應用程序)是否存在哪些被禁止自啟的應用程序。如果有則視為攔截失敗,如果沒有則視為攔截成功。并且多次嘗試后給出結論,避免測試錯誤導致數(shù)據(jù)不正確。
結果一目了然。所有軟件都不會影響應用的主動正常運行。攔截成功率最高的顯而易見是360手機衛(wèi)士極客版,而且就目前為止,360手機衛(wèi)士極客版是唯一一款支持服務方式(service)自啟攔截的安全軟件,攔截稱功率也是最高的,禁用了這些自啟軟件,手機跟新系統(tǒng)一樣流暢,并且更加省電!
關于CNMO | 聯(lián)系我們 | 站點地圖 | 精英招聘 | CNMO記事 | 家長監(jiān)護工程 | 舉報不良信息
Copyright © 2007 -
北京沃德斯瑪特網(wǎng)絡科技有限責任公司.All rights reserved 發(fā)郵件給我們
京ICP證-070681號 京ICP備09081256號 京公網(wǎng)安備 11010502036320號