俞木發(fā)
對于使用Android手機的用戶來講,無論你是直接從市場里點擊安裝的APP,還是通過下載后安裝的,實際上,都無法逃脫與一種APK格式的文件打交道的過程。因此如果要把Android手機玩通透,我們就要深入認識和掌握這種文件格式及其使用技巧,相信你的手機會用得更加得心應手。
APK是Android Package的縮寫,直譯過來即Android安裝包(APK),它是安卓系統(tǒng)上的一種可執(zhí)行文件,類似iOS平臺上的.ipa文件、Windows平臺上的.exe文件。它其實是ZIP格式的一個壓縮包,可以在Windows平臺下直接使用7ZIP將其打開,其中的Dex文件(即Dalvik VMexecutes)就是Android Dalvik(安卓虛擬機)執(zhí)行主程序(見圖1)。
一般一個APK文件主要由LIB目錄等幾個主要文件(夾)組成,我們?nèi)粘=佑|到的主要是如下表所示的文件(夾)。
現(xiàn)在一些x86安卓設(shè)備在運行一些APK時會出現(xiàn)無法安裝或者閃退的情況,原因大多就是由于LIB文件夾沒有專為x86處理器適配的運行庫文件所致,此時一般只要下載For x86專版即可。比如MoboPlayer x86播放器,打開APK文件后即可看到x86目錄,這種版本就可以在英特爾芯平板上完美運行(見圖2)。此外ARM處理器架構(gòu)有ARMV7、ARMV8、ARM9等之分,一些特殊應用(主要是和顯卡密切相關(guān),如視頻播放器、3D手游等)為了保證兼容性,在LIB目錄還會有類似ARM-v7a之類的名稱,因此這類應用最好下載和自己設(shè)備ARM類型一致的版本。
不走尋常路——玩轉(zhuǎn)APP另類安裝
平時對于應用的安裝,大家一般都是通過直接點擊鏈接和下載的方法進行。不過這種常規(guī)的安裝方法有不少弊端,比如無法批量安裝、無法安裝到系統(tǒng)目錄等。其實應用的安裝還有更多簡潔、高效的方法。
1. 批量安裝應用
在新買手機或者手機進行系統(tǒng)恢復后,我們經(jīng)常要安裝很多應用。如果需要批量安裝多個應用,大家可以借助第三方安裝工具。以豌豆莢為例,首先在電腦上下載好需要安裝的應用,接著將手機和豌豆莢成功連接后,在電腦上啟動豌豆莢并切換到“應用和游戲管理”,然后點擊“安裝新應用”,將本地已經(jīng)下載好的應用全部導入安裝列表,點擊“安裝”即可(見圖3)。
2. 安裝應用到系統(tǒng)目錄
平時用品牌機的用戶都知道手機上會預裝不少出廠的應用,這些應用無法卸載,而且可以在每次使用系統(tǒng)重置后自動恢復。其實對于自己需要經(jīng)常使用的應用,也可以將其安裝為系統(tǒng)應用。比如喜歡使用微信的用戶就可以將微信安裝為系統(tǒng)應用,這樣每次系統(tǒng)重置后就不需要再次安裝了。
首先確保你的設(shè)備已經(jīng)ROOT,接著按照常規(guī)的方法安裝微信,接著在手機上啟動“Link2SD”,然后在應用的列表長按微信,在彈出的菜單選擇“轉(zhuǎn)為系統(tǒng)應用”,這樣“Link2SD”會在后臺自動將微信的文件復制到“/system/app”下(見圖4)。
按提示重啟設(shè)備后,打開豌豆莢后切換到“系統(tǒng)預裝”,這里可以看到現(xiàn)在微信就變?yōu)槭謾C預裝的應用,使用普通的方法無法將其卸載,而且系統(tǒng)重置后我們就可以繼續(xù)使用微信了(見圖5)。
2013年第20期《管好你的應用 走進Android APK文件的世界》一文詳細介紹如何手動將APK變?yōu)橄到y(tǒng)應用。手動復制方法的原理其實是和Link2SD一樣的,只是Link2SD使用更為簡單,更適合新手的使用。不過手動復制方法則可以讓大家更清楚地了解系統(tǒng)預裝APK的運行原理。
設(shè)備ROOT可能會帶來一些不可測的后果,比如錯誤編輯系統(tǒng)文件可能導致系統(tǒng)崩潰,一些品牌機如三星手機,自己隨意ROOT則可能造成保修失效。所以大家在進行ROOT之前,一定要注意是否會給自己的設(shè)備造成什么樣的影響!
我們也可以使用手動復制應用到上述目錄的方法將應用變?yōu)橄到y(tǒng)應用(如果應用還有LIB目錄,則需要手動將LIB目錄下的文件復制到/system/lib),并且為其配置合適的權(quán)限。如果想將已安裝的應用在手機內(nèi)存和SD卡中互轉(zhuǎn),比如要將安裝在SD卡的應用移動到手機內(nèi)存中,我們只要找到SD上的應用文件和.so文件,然后手動移動到“/data/app”和“data/data/下即可。
深入APK——定制符合自己使用的APK
在日常使用中,由于應用默認安裝經(jīng)常會給我們的使用帶來不便,如很多英文軟件安裝后顯示的是英文名稱,這給英文不好的同學帶來諸多不便。因此我們可以手動對APK進行編輯,定制符合自己使用的APK。這里以APK應用改名為例。
1. 更改應用快捷方式名稱
大家知道,Android都是使用多個虛擬桌面,對于自己經(jīng)常使用的應用,我們經(jīng)常會將其拖動到第一桌面。這里的應用圖標實際上和Windows桌面的快捷方式是一樣的(不過Android的設(shè)備默認不支持修改快捷方式的名字)。對于原來是英文的應用,我們可以借助“GO桌面”輕松進行更改。
在手機上切換到GO桌面,進入應用列表后長按需要更改桌面的英文應用,點擊上方的“發(fā)送到桌面”,接著在桌面長按選中需要改名的快捷方式,在彈出的菜單中選擇“重命名”,這樣可以將應用快捷方式改為自己需要的中文名稱(見圖6)。
2. 自行編譯應用名稱
上述方法由于需要用到第三方桌面,一些朋友可能并不喜歡使用GO桌面。如果要對應用改名,我們還可以通過對應用進行編譯的方法來實現(xiàn)。因為應用的名稱是由APK內(nèi)部文件決定,因此需要對APK進行編譯,并且需要重新簽名才能正常安裝。這里我們以“com.betterandroid.bettercut.apk”文件為例。應用默認安裝后顯示的是“bettercut”的名稱,實際上它是一款創(chuàng)建快捷方式的應用。下面就將它改名為“創(chuàng)建快捷方式”。
首先在電腦上使用7-ZIP打開APK文件,然后將其中的“resources.arsc”解壓到桌面?zhèn)溆茫又陔娔X上啟動“ArscEditor”,然后將上述解壓的文件拖入程序窗口,接著切換到“string”,其中“App_name”對應的就是程序名稱?,F(xiàn)在按提示在“區(qū)域值”文本框輸入自己想要的名稱“創(chuàng)建快捷方式”,點擊“保存當前值”(見圖7)。
完成應用的改名后返回桌面,然后將修改過的“resources.arsc”文件重新拖到7-ZIP窗口,替換原來APK文件中的同名文件(見圖8)。
繼續(xù)在電腦上啟動“AndroidResEdit”,啟動程序后點擊“簽名→簽名APK文件”,接著在打開的窗口選擇上述修改過“resources.arsc”文件的APK文件,點擊“立即簽名”,然后將簽名的文件另存,成功完成簽名后就可以在手機上正常安裝了(見圖9)。
現(xiàn)在將修改過的APK文件安裝在手機上,可以看到在安裝界面,應用的名稱已經(jīng)顯示為“創(chuàng)建快捷方式”,剩下的操作按常規(guī)的方式安裝即可(見圖10)。
因為這里對應用進行了重新簽名,所以如果安裝同一應用,需要將舊應用卸載后才能安裝改名后的應用。改名后的應用成功安裝后,在應用列表中可以看到應用的名稱已經(jīng)變?yōu)樯鲜龆x的“創(chuàng)建快捷方式”(見圖11)。
取我所需——提取APK資源文件
除了對APK資源進行編譯外,我們還可以自由提取其中的有用資源。現(xiàn)在很多Android電視盒都支持鼠標的操作,但是Android默認的鼠標指針非常小,這樣在大屏幕電視上使用鼠標操作非常不便。這時,可提取其他APK文件中的大鼠標指針資源文件為我所用(操作的盒子同樣需要ROOT)。
鼠標指針資源是“/system/famework/framework-res.apk”文件中的一張圖片文件,因此我們首先要找到一個包含大鼠標指針的APK文件。比如英菲克系列盒子的鼠標指針就較大,首先在任意英菲克盒子中提取上述“framework-res.apk”文件,將其復制到桌面后,同上使用7-ZIP打開,然后將“res/drawable-mdpi/ pointer_arrow.png”文件解壓到桌面?zhèn)溆茫ㄒ妶D12)。
同上,在自己的盒子上安裝RE文件管理器,將“/system/famework/framework-res.apk”文件也復制到桌面?zhèn)溆?。使?-ZIP打開后,按提示將上述解壓后的“pointer_arrow.png”文件拖到其中替換原文件。接著將修改過的“framework-res.apk”拷貝到“/system”下,然后使用RE管理器將其權(quán)限修改為“rw-r-r”(見圖13)。
完成權(quán)限的修改后將修改過的“framework-res.apk”復制到“/system/famework”替換同名文件,此時盒子會自動重啟,重啟后再插上無線鼠標,現(xiàn)在就可以看到修改過的指針變大了許多(見圖14)。
跨越平臺——在其他平臺上運行APK
由于APK文件默認只能運行在ARM架構(gòu)(包括ARM和專為ARM架構(gòu)適配的英特爾CPU)的設(shè)備上,但在日常操作中,我們可能希望在其他平臺上運行APK文件。對于有這些需求的朋友,可借助虛擬機來實現(xiàn)。
之前雜志已經(jīng)多次介紹過通過安裝Android虛擬機運行APK文件,這里再為大家推薦一款綠色版Android虛擬機(下載地址:http://www.qqtn.com/down/50016.html)。下載解壓后直接運行其中的“Emulator.exe”即可啟動虛擬機,選擇“平板電腦模式”之后就可以開始使用虛擬機了(見圖15)。
如果需要安裝APK游戲,點擊程序界面的“安裝軟件”,接著在打開的頁面中下載需要安裝的APK游戲運行即可(見圖16)。