Android手機、平板的使用者,應該都有這樣的疑惑:剛買來這台機器的時候,充飽電力的時候還可以用上一天甚至兩天的時間。但是突然有一天,你的手機突然變成了吃電怪獸,不但用不到半天就沒電,甚至就算是關上了Wi-Fi網路,手機還是燙的要命,接下來小編就為你解析,Android手機會從乖寶寶突然變成吃電怪獸可能的原因。
Android 廣告 App 杜絕系列:
Android應用程式檔案稱為Android Application Package,我們一般稱為APK,在一個APK檔案中封裝了許多不同的小模組。以Android的免費遊戲、程式的APP來說,除了包含程式、遊戲本身之外,另外多半都會包含一個廣告模組。很多廣告模組,裡頭可能包藏了近似病毒的行為,而某些程式設計師有意或是無意地引用。再加上Android平台採用開放的管理方式,讓Android上面特別容易產生惡意程式。就算是在排行榜前二十名的推薦軟體,有時也不一定能保證就沒有問題。因此,如果你對這方面不加防範的話,很快就淪為受害者。
至於怎麼判斷自己是否受害?雖然惡意程式模組的種類、癥狀各不相同,但是由於都會頻繁的用到網路的功能,因此當你發現手機突然耗電、容易變燙,十之八九都是惡意程式模組所導致。
▲遊戲、程式本身:對於一些非連網的單機遊戲,調用的Android機器功能單純,耗用的電力其實並不會太高。 內嵌式廣告:某些內嵌式廣告由於頻繁偵測使用者所在位置,以及上傳下載圖文內容,導致電力耗損比遊戲本身還誇張。
理解廣告的源頭
美國普渡大學去年曾經做過一項研究,測試在2.3版的Android手機上執行遊戲時,執行遊戲本身的耗電量只有總電量的30%,而另外70%的電量則都用在上傳使用者的位置,以及下載廣告的功能。想想你的手機中裝了多少免費軟體,累積下來所佔用的電量還是相當可怕。
就像在電視、傳播媒體上有所謂的廣告代理商一樣,網路的廣告代理商稱為Ad Networks,這些網路廣告商各自提供了自己的廣告模組,供程式設計師在程式裡頭引用,而問題就出在這些廣告模組上面。
惡名昭彰的廣告模組
著名的Ad Networks很多,像是Admob、Airpush、Appenda、LeadBolt、Moolah Media、Startapp……等等,不同的Ad Networks各有獨特的廣告模組。因此,這些廣告模組也有好有壞。其中最值得信賴的應該是由Google併購的網路廣告商Admob這個廣告模組,也是目前最多免費App引用的一個模組,這個模組算是值得放心的。而比較為人詬病的則是Airpush這個廣告模組,因為它會不定期在手機的通知欄亂炸廣告,讓人不堪其擾。
其中有些廣告模組特別惡名昭彰,因為他們引用了過多的使用者權限,而且廣告內容往往遊走在情色邊緣。因此就有反廣告軟體的推出,他們蒐集了這些廣告模組的特徵碼,可以用來偵測下載的App裡頭含有哪一種或是多種不同的廣告模組,原理就跟防毒軟體的作用差不多。
▲免費App裡頭同時存取兩個不同網路的資料,從App發行商那裏存取遊戲或程式的資料,同時在背後則至廣告伺服器存取廣告所需的資料,並且上傳手機資訊給廣告商。
▲Android免費App最常引用的10大廣告模組 (資料提供:AppBrain.com網站)
廣告隱藏在哪裡?
以Android手機來說,廣告有兩種形式:內嵌式的推播廣告,以及全螢幕的推送廣告。而iPhone系統的手機則僅有內嵌式的推播廣告,雖然iPhone也有推送訊息,但它的推送訊息僅能傳送文字,而且還有時間、次數的限制,因此並不構成對手機電力的危害。
內嵌式的推播廣告
推播廣告通常隱藏在遊戲主畫面的下方或是上方,會有一個橫向的塊狀區域,在這個區域中嵌入與遊戲無關的廣告訊息。由於Android對於內嵌式的廣告,在廣告格式以及尺寸大小都有一定的規範,因此通常這個廣告的位置,不是放在螢幕的最上方,就是螢幕的最下方。而如果你用橫式來操作的話,由於廣告寬度可能僅有螢幕的一半,因此還會有向左右對齊的差別。
內嵌式推播廣告的形式
內嵌式廣告由於有規定的尺寸以及大小,而市面上Android系統的螢幕尺寸不一,因此有時就會有廣告影響到使用介面的情況發生。
▲如果引用同一個廣告代理商來源,不同的遊戲都會秀出同樣的廣告。
▲也有以秀出純文字為主的推播廣告。
全螢幕的推送廣告
第二種是推送廣告,這種廣告是全螢幕的,依照設計者的想法,可以在不同時間顯示。有的遊戲是在剛開啟時插入全螢幕廣告,或是趁著遊戲在進行讀取動作的等待時間插入。對於使用者而言,全螢幕廣告與遊戲介面獨立開來,不會造成使用上的困擾,因此會比較喜歡這種形式。
不過有些比較惡質的設計,是在就算你關閉遊戲之後,推送廣告也會出現在你系統的狀態欄,並且頻繁地更換廣告,有時就像是螢幕保護程式一樣,當你一打開手機,就會看到一個廣告畫面一閃即逝。這種形式的推送廣告就會造成電力的耗損,將你的手機電力大量耗用殆盡。
混搭的廣告模組
App 發行者為了多賺幾個廣告來源,有些App會採用「混搭」廣告模組的形式,交錯用推播廣告以及推送廣告來進行。以Android平台上的「JewelsStar」這款遊戲為例,你可以看到廣告出現在哪些來源。
▲遊戲進入前,先跳出全螢幕的推送式廣告。
▲進入遊戲介面,在下方顯示推播廣告。
▲之後隨著遊戲的進行,下方的推播廣告依然存在。
推送廣告帶給手機的問題
在Android平台上的這種推送式廣告,算是新的網路廣告形式,由於它的推送時間並無法隨著應用程式關閉而結束,隨時都會在通知欄裡頭跳出廣告訊息,使用者無法控制,因此常與垃圾訊息畫上等號,有時廣告內容還夾帶情色訊息,更是令人尷尬。
除了尷尬的廣告內容之外,推送廣告其實對你的手機還有更多不良影響:
- 行動數據費用暴增:如果你在外面使用3G網路,這些文字與圖片的傳送數據,很可能讓你的支出費用破錶,尤其是人在國外費用更是可觀。
- 耗電量增加:推送廣告會帶有聲音以及震動的功能,對於耗電有明顯的影響。
- 手機可用的空間減少:手機需要額外的空間來存放推送廣告的內容。
- 容易下載到更多惡意程式:如果你不慎點選到推送廣告的內容,可能會要求你下載更多不良的軟體,甚至可能是病毒程式,造成連鎖的不良後果。
推送廣告從哪裡影響你?
推送廣告除了會在App、應用程式中以全螢幕的形式顯示之外,最主要的還是會在手機中的通知欄「主動」跳出相關的訊息,目前被Google Play裡頭遊戲App濫用的程度,就與目前我們信箱裡頭清不完的垃圾信件程度是一樣的。更討厭的是,你無法馬上查出這些推送廣告是由哪一個應用程式所發送出來的,因此就算想要將程式移除,往往也無從著手。
▲後台服務:Android可以在執行其他程式的時候,在背景進行任務。就算你沒有點選執行,也會在背景默默運行廣告。
▲系統上方的狀態列:系統上方的狀態列會顯示最新的應用程式相關通知的狀態,而推送廣告的狀態都會以圖示顯示出來。
▲系統通知欄(Notification Bar):所有出現的推送訊息都會出現在通知欄這裡,有時不只是通知欄的文字訊息,還會通送全螢幕的圖片佔據你的桌面。
如何揪出廣告元兇?
瞭解Android耗電的最大兇手在廣告,那麼要怎樣揪出這些惡意程式呢?在下一篇我們將介紹三款惡意程式偵測App,讓你一次揪出手機內的惡意軟體。
延伸閱讀:
AirPush Detector:揪出亂炸廣告連結的Android App
你的Android 很耗電?研究發現App 廣告佔了75% 耗電
Android 用戶小心!apkdeveloper 推出的 Super 系列 App 會騷擾你的手機
本文同步刊載於PC home雜誌
歡迎加入PC home雜誌粉絲團!
真是【吃電 大恐龍】
> 所以沒有對策!?
這是第一篇,下一篇文章會說明如何解決
沒有解答追追追 = =!!