資料介紹
也許許多人都曾經(jīng)想過(guò)要修改APK自己DIY ,但不知道怎么下手,其實(shí)要修改APK并沒(méi) 有想象中的那樣復(fù)雜,這個(gè)雖不能讓你成為 高手(那要有程序基礎(chǔ)才可能),但至少入門(mén) 是沒(méi)有問(wèn)題的,涵蓋了大部分的東西,全 方位step By step的教你怎么弄這些東西!
部分文字來(lái)源網(wǎng)絡(luò),錯(cuò)誤難免,請(qǐng)指正: 一、APK文件結(jié)構(gòu)介紹 二、JAVA環(huán)境的搭建 三、常用工具介紹及基本使用 四、APK的美化、漢化、去廣告
一、APK文件結(jié)構(gòu)介紹:
簡(jiǎn)單的認(rèn)識(shí)一下APK文件的結(jié)構(gòu),apk文件 實(shí)際是一個(gè)zip格式的壓縮包,只不過(guò)后綴 名為.apk,所以我們完全可以通過(guò)解壓縮工 具(例如WINRAR,好壓)解開(kāi),解開(kāi)后你將看到 大致如下的結(jié)構(gòu):
文件 AndroidManifest.xml是每個(gè)應(yīng)用都必須定義和包含的,它描述了應(yīng)用的名字、版本 、權(quán)限、引用的庫(kù)文件等等信息,如要把a(bǔ) pk上傳到Google Market上,也要對(duì)這個(gè)x ml做一些配置。 META-INF目錄 META-INF目錄下存放的是簽名信息,用來(lái) 保證apk包的完整性和系統(tǒng)的安全。在eclip se編譯生成一個(gè)api包時(shí),會(huì)對(duì) 所有要打包 的文件做一個(gè)校驗(yàn)計(jì)算,并把計(jì)算結(jié)果放 在META-INF目錄下。而在Android平臺(tái)上安 裝apk包時(shí),應(yīng)用管理器會(huì)按照同樣的算法對(duì)包里的文件做校驗(yàn),如果校驗(yàn)結(jié)果與ME TA-INF下的內(nèi)容不一致,系統(tǒng)就不會(huì)安裝這個(gè)apk。這就保證了apk包里的文件不能 被隨意替換。比如拿到一個(gè)apk 包后,如果 想要替換里面的一幅圖片,一段代碼, 或 一段版權(quán)信息,想直接解壓縮、替換再重 新打包,基本是不可能的。如此一來(lái)就給病毒感染和惡意修改增加了難度,有助于 保護(hù)系 統(tǒng)的安全。 classes.dex文件 classes.dex是java源碼編譯后生成的java字節(jié)碼文件。但由于Android使用的dalvik虛擬機(jī)與標(biāo)準(zhǔn)的java虛擬機(jī)是不兼容的,dex 文件與class文件相比,不論是文件結(jié)構(gòu)還 是opcode都不一樣。目前常見(jiàn)的java反編 譯工具都不能處理dex文件。 Android模擬器中提供了一個(gè)dex文件的反 編譯工具dexdump。用法為首先啟動(dòng)Andro id模擬器,把要查看的dex文件用adb push 上傳的模擬器中,然后通過(guò)adb shell登錄 ,找到要查看的dex文件,執(zhí)行dexdump x xx.dex。 目前在網(wǎng)上能找到的另一個(gè)dex文件的反編 譯工具是Dedexer。Dedexer可以讀取dex 格式的文件,生成一種類似于匯編語(yǔ)言的 輸出。這種輸出與jasmin[ ]的輸出相似,但 包含的是Dalvik的字節(jié)碼。我們會(huì)在下一節(jié) 詳細(xì)介紹一下Dedexer。 res 目錄 res目錄存放資源文件。 resources.arsc 編譯后的
二進(jìn)制資源文件
二、JAVA環(huán)境的搭建
這里同時(shí)提供一個(gè)JDK下載的直通車地址: http://download.oracle.com/otn-pub/java/jdk/7u3-b05/jdk-7u3-windows-i586.exe
安裝JDK,一路下一步, 配置系統(tǒng)環(huán)境變量,以WIN7為例: 我的電腦--》屬性--》高級(jí)系統(tǒng)設(shè)置--》環(huán)境變 量--》系統(tǒng)變量 新建JAVA_HOME 變量名:JAVA_HOME,變量值:JDK的安裝 目錄 新建CLASSPATH 變量名:CLASSPATH,變量值:%JAVA_HO ME%\lib\*.jar PS:%JAVA_HOME%表示引用JAVA_HOME的 值,相當(dāng)于程序中的變量,如果不填寫(xiě)%JAV A_HOME%,可以直接填寫(xiě)路徑絕對(duì)值 編輯path, 在變量值末尾加上 ;%JAVA_HOME%\bin
PS:“;”為不同路徑之間的分割符
配置完成后,點(diǎn)開(kāi)始--》運(yùn)行--》輸入CMD回 車--》輸入JAVA回車,看到如圖(2-6)配置成 功,否則請(qǐng)仔細(xì)檢查系統(tǒng)變量是不是配置 有誤
三、常用工具介紹及基本使用
1、反編譯利器apktool 官方下載地址:http://code.google.com/p/an droid-apktool/downloads/list (需要下載“apktool-install-windows-2.2_r01 -3.tar.bz2”和“apktool1.3.2.tar.bz2”兩項(xiàng),解 壓出里面的東西) 我們得到需要的3個(gè)文件,分別是:aapt.ex e、apktool.bat、apktool.jar 可以將這三個(gè)文件直接放到C:\Windows下 ,這樣不用配置環(huán)境變量 或者放到任意目錄,然后在path變量中追 加上該目錄 apktool在cmd中兩個(gè)最基本的命令如下: 反編譯:將X盤(pán)的abc.apk反編譯,并將處理后 的文件,放在X盤(pán)內(nèi)的“helloworld”文件夾內(nèi)。 apktool d X:\abc.apk X:\helloworld PS:當(dāng)然在實(shí)際應(yīng)用中,一般都是CMD先定 位到要反編譯的apk文件目錄下,這樣命令就 不用輸入絕對(duì)路徑,而變成了 apktool d abc.apk helloworld 編譯:將“helloworld”文件夾重新編譯 apktool b X:\helloworld 特別注意:有些APK文件的編譯是需要RO M中的框架的,例如conversation.apk要反編 譯,同時(shí)需要framework里的framework-res /blur-res/moto-res三個(gè)apk,簡(jiǎn)單說(shuō)一下如 何導(dǎo)入框架: 添加framework的命令: apktool if framework-res.apk 當(dāng)然多數(shù)情況是不用這樣的,要編譯其它 的不需要這些框架的APK請(qǐng)刪除導(dǎo)入的文件
- Bluetooth藍(lán)牙的詳細(xì)資料說(shuō)明 26次下載
- LabVIEW的程序?qū)嵗?b class="flag-6" style="color: red">詳細(xì)資料說(shuō)明 142次下載
- Python的100個(gè)小例子詳細(xì)資料說(shuō)明 15次下載
- 存儲(chǔ)器及接口設(shè)計(jì)的詳細(xì)資料說(shuō)明 17次下載
- emmc啟動(dòng)燒寫(xiě)的詳細(xì)資料說(shuō)明 26次下載
- Protel DXP的常用快捷鍵詳細(xì)資料說(shuō)明 0次下載
- keil背景修改方案的詳細(xì)資料說(shuō)明 22次下載
- SQL PLUS客戶端工具如何修改字體詳細(xì)資料說(shuō)明 7次下載
- PADS9.3如何全局修改“元件序號(hào)或元件的邊框”的大小詳細(xì)資料說(shuō)明 0次下載
- 電機(jī)驅(qū)動(dòng)的詳細(xì)資料說(shuō)明 37次下載
- ARDUINO DIY輕量級(jí)無(wú)人機(jī)飛控的詳細(xì)資料說(shuō)明 171次下載
- 同軸連接器HFSS模擬的詳細(xì)資料說(shuō)明 82次下載
- multisim電路實(shí)驗(yàn)仿真波形的詳細(xì)資料說(shuō)明 38次下載
- 如何修改短信接收TEXT格式?詳細(xì)資料和程序概述 4次下載
- 如何修改Muto軟件來(lái)運(yùn)行自己的StaseSimo Foc板的詳細(xì)資料概述 14次下載
- 自己DIY一個(gè)空心時(shí)鐘 2760次閱讀
- DIY一個(gè)簡(jiǎn)單的Arduino板子 5349次閱讀
- 固態(tài)鋰離子電池的詳細(xì)資料解析 8650次閱讀
- RS232接口串口取電電路的詳細(xì)資料介紹 7863次閱讀
- 電源適配器的一些特性詳細(xì)說(shuō)明 5278次閱讀
- 使用AT89S51單片機(jī)制作紅外遙控器的資料和源代碼詳細(xì)說(shuō)明 5863次閱讀
- 如何進(jìn)行PLC控制程序的設(shè)計(jì)詳細(xì)資料PPT說(shuō)明 5753次閱讀
- 庫(kù)卡機(jī)器人模擬量輸入輸出編程的詳細(xì)資料概述 6623次閱讀
- PPT教程之伺服電機(jī)及其驅(qū)動(dòng)技術(shù)的詳細(xì)資料講解 6990次閱讀
- PLC工作原理動(dòng)畫(huà)詳細(xì)資料分析包括順序控制和正反轉(zhuǎn)控制等十八張動(dòng)圖 11.3w次閱讀
- 開(kāi)關(guān)電源的正激變換器基本工作原理及元器件如何選擇等詳細(xì)資料概述 1.3w次閱讀
- PLC常用基本環(huán)節(jié)梯形圖和詳細(xì)文字說(shuō)明詳細(xì)資料概述 8966次閱讀
- 變壓器保護(hù)的基本要求,保護(hù)配置和運(yùn)行規(guī)定的詳細(xì)資料概述 8485次閱讀
- 在Git中如何克隆,修改,添加和刪除文件的詳細(xì)資料概述 4005次閱讀
- 修改dll文件工具和說(shuō)明 7018次閱讀
下載排行
本周
- 1TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 2開(kāi)關(guān)電源基礎(chǔ)知識(shí)
- 5.73 MB | 6次下載 | 免費(fèi)
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計(jì)
- 0.60 MB | 3次下載 | 免費(fèi)
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 0.61 MB | 2次下載 | 免費(fèi)
- 6基于FPGA的C8051F單片機(jī)開(kāi)發(fā)板設(shè)計(jì)
- 0.70 MB | 2次下載 | 免費(fèi)
- 751單片機(jī)窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費(fèi)
- 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21548次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
- 0.00 MB | 6653次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191185次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183278次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多