寫作目的:
最近在折騰安卓,以后的方向也初步定為安卓開發(fā)了,學(xué)習(xí)過程中遇到了不少問題,百度,google了不少,但有些解決方法由于版本過老,現(xiàn)在已經(jīng)失效,于是想將自己折騰成功的一些東西總結(jié)起來,供給有需要的人參考,避免趟我趟過的坑,如有錯誤,還請斧正:)
由于自己也是小白,寫的東西當(dāng)然也比較小白向,所以我們從環(huán)境搭建說起。
1. jdk配置
? 弄安卓的話自然離不開java,所以jdk的配置是必須的。
? · 首先前往jdk官網(wǎng)下載jdk的一個安裝包

· 接下來最好全部選擇默認(rèn)安裝配置,尤其是安裝路徑,否則可能會影響接下來的變量設(shè)置,我試過兩次放在D盤,都會報錯。、
? · 然后我們設(shè)置一下系統(tǒng)變量
右擊我的電腦,然后打開高級系統(tǒng)設(shè)置,打開環(huán)境變量,接下來的操作都在系統(tǒng)變量中進(jìn)行。


· 在系統(tǒng)變量中(注意不是用戶變量)先新建兩個變量,變量名和變量值如下:
%JAVA_HOME%\lib\dt.jar
%JAVA_HOME%\lib\tools.jar
最后確定一下就好了。


配置好之后我們需要檢驗(yàn)一下,方法為:
同時按win+r,如后輸入cmd即可,在cmd中,輸入java –version,如果返回了java的版本號,即代表配成功.

2. 環(huán)境搭建好之后,我們還需要一個反編譯以及重打包的工具,即apktool,網(wǎng)上很多人留下的集成好批處理文件的工具包由于apktool的版本過老,直接使用是會報錯的,我們需要自己稍微做個新版本的工具包


· 同樣前往官網(wǎng)下載,但和我們平時下載好安裝包之后無腦點(diǎn)下一步不同,我們除了下載apktool-2這個jar文件以外,還需要下載與之匹配的一個批處理文件,即第一個的apktool.bat
? ? · 然而點(diǎn)開第一個鏈接后會得到一串代碼,這不是網(wǎng)頁GG了,這就是批處理文件的內(nèi)容,用編輯器粘貼這些代碼,保存后命名為apktool.bat這樣一個批處理文件即可。

· 然后我們將第二個下載鏈接下載下來的jar文件和這個批處理文件放一塊空文件夾中即可。

準(zhǔn)備就緒,讓我們開始反編譯吧,let's go
? 3. 首先將你想要反編譯的apk放在apktool的文件夾下
? ? ? 然后打開cmd,用cd 命令到apktool文件夾所在的目錄
pktool.bat d demo.apk//demo.apk需要改成你的apk的名字
? ? ? 等到cmd跑完,如果apktool文件夾里多了一個demo文件夾,且目錄不為空,即反編譯成功.
ok,當(dāng)你按需求改完代碼或者圖片之類的之后,需要將demo重打包為一個apk文件,使用代碼:
apktool b demo -o new_demo.apk
? ? · 同樣,當(dāng)cmd跑完,目錄中出現(xiàn)一個new_demo.apk,即代表succes
由于這個新apk已經(jīng)被你改過了,原作者的簽名也就沒了,所以無法安裝到手機(jī)上,我們需要自己給個簽名
注意:接下來的操作需要以管理員身份運(yùn)行cmd
? · 首先找到j(luò)dk中bin目錄所在位置,默認(rèn)位置為C:\Program Files\Java\jdk-9.0.4\bin
? ? 我們將需要打簽名的new_demo.apk放到該目錄下,cmd中cd到該目錄,
cd C:\Program Files\Java\jdk-9.0.4\bin
然后開始打簽名吧,代碼如下:
· keytool -genkey -alias demo.keystore -keyalg RSA -validity 40000 -keystore demo.keystore· jarsigner -verbose -keystore demo.keystore demo.apk demo.keystore
succes? !反編譯,重打包,簽名系列