當前位置:首頁 » 編程軟體 » 回編譯

回編譯

發布時間: 2022-01-14 15:32:27

『壹』 APK反編譯後回編譯失敗是為什麼

、反編譯=回編譯後分別是
smali目錄 回編譯為 classes.dex 文件
res目錄 回編譯為 resources.arsc 文件
2、回編譯順序
在回編譯時,會先檢查「源」即resources
當你漢化文件,修改出錯了(缺少一個符號也不行),
那麼回編譯會自動跳過編譯res文件夾,直接回編譯smali 。
所以,如果沒有對smali(classes.dex)漢化,那麼建議大家刪掉這個文件夾,
這要會大大加快回編譯速度。1、反編譯=回編譯後分別是
smali目錄 回編譯為 classes.dex 文件
res目錄 回編譯為 resources.arsc 文件
2、回編譯順序
在回編譯時,會先檢查「源」即resources
當你漢化文件,修改出錯了(缺少一個符號也不行),
那麼回編譯會自動跳過編譯res文件夾,直接回編譯smali 。
所以,如果沒有對smali(classes.dex)漢化,那麼建議大家刪掉這個文件夾,
這要會大大加快回編譯速度。
3、出錯問題1
在漢化時,往往會不小心刪掉一些符號,如 "<" ">"符號等等。
<string name="app_name">File Manager</string>
<string name="app_name">文件管理器/string>
<string name="app_name"文件管理器</string>
這些小小的錯誤都會導致回編時譯檢查出錯。
所以漢化時,注意對校,然後再回編譯。
建議使用一些高級的文本編輯器,支持語法高亮視圖的。
4、出錯問題2
最近發現有些APK文件 反編譯後,就算不漢化直接回編譯,都會出錯。
有可能的原因1,反編譯後XML文件語法中@符號 前面多了"\" (\@ ),
用文本編輯工具 直接替換【\@】為【@】,應該可以解決。
建議使用最新版本的反編譯工具。
5、建議大家使用新版本的APKTool工具,
當然如果新的有問題也可以試試舊的一、系統文件漢化再次強調
1、漢化Settings.apk(系統設置)、MMS.apk(信息)、Phone.apk(電話)、
等等系統文件,一定要先 安裝構架,具體看另個文件
<關於APKTool工具反編譯Settings.apk問題>。
2、系統文件漢化完後不需要簽名,直接替換漢化後的文件,就可以了。
主要是,系統文件放在系統目錄,無需再次讀取簽名獲得許可權,已經是高級了。
二、打包說明
1、通常漢化完回編譯後,會自動生成所有APK內的文件,或者自動生成*.APK文件。
但是建議大家不要直接使用該文件,進了使用替換法,替換掉你漢化後的文件,
如:resources.arsc,如果修改過的圖片,等等…
2、很多人對於APK文件 解壓縮或壓縮 都用「WinRAR」或「好壓」,這里不推薦。
希望大家安裝7-Zip這個壓縮工具,對於zip格式的支持是最好的。而且很方便,
不需要重新關聯apk 直接右鍵打開就行了。替換直接拖拉進去,就OK了一、回編譯出錯問題

(1.提示 strings.xml 最後一行錯誤,檢查是否</string>符號錯誤;
在漢化時,往往會不小心刪掉一些符號,如 "<" ">"符號等等。
<string name="app_name">File Manager</string>
<string name="app_name">文件管理器/string>
<string name="app_name"文件管理器</string>

(2.提示 strings.xml 最頂部含中文代碼首行錯誤,編碼格式不對,轉換成 UTF-8;
(3.提示 public.xml 出錯,檢查改動過的 arrays.xml 是否代碼有錯誤的地方;

二、一切能正常但無法回編譯
還有一種情況,apktool最新版本能正常反編譯一個apk文件,在未做任何修改的情況下,無法回編譯。
這是就要注意了,可以嘗試一下用低版本的apktool進行【反編譯】,然後在用高版本的apktoo工具【回編譯】。
這里向大家推薦用 【APKDB】 這個工具,很方便,反編譯時可以選擇apktool的版本。

『貳』 mt管理器的回編譯在哪裡

這個軟體真的很好用,比如想改個軟體名字啊,美化啊,漢化啊,都可以,強烈推薦。MT管理器是一款文件管理器*延用java平台的雙窗口操作模式,便捷的九宮格菜單操作*root操作:掛載磁碟讀寫/只讀,修改文件許可權、用戶組,瀏覽系統限制目錄(/data等)*批量復制、移動、刪除、重命名、創建符號鏈接、修改許可權*強大的搜索功能,支持對文件名及文件內容、大小進行搜索*顯示apk圖標、圖片縮略圖,支持縮略圖緩存、顯示ZIP內圖片縮略圖*內置文本編輯器、圖片瀏覽器、音樂播放器、字體預覽器、腳本執行器*完整的ZIP文件操作功能,可直接添加、重命名、刪除ZIP內文件,免二次壓縮*支持打開RAR文件及解壓*APK編輯功能,包括編輯DEX,ARSC,XML,APK簽名,zipalign優化*其它普通文件操作功能

『叄』 反編譯,回編譯什麼意思有什麼用!我在學習製作刷機包

原有的包進行修改

『肆』 android studio 如何回編譯一個APP

android studio中不能編譯反編譯出來的文件,android studio只能編譯源代碼。

1.反編譯Apk得到Java源代碼
首先要下載兩個工具:dex2jar和JD-GUI
前者是將apk中的classes.dex轉化成Jar文件,而JD-GUI是一個反編譯工具,可以直接查看Jar包的源代碼。

具體步驟:
首先將apk文件,將後綴改為zip,解壓,得到其中的classes.dex,它就是java文件編譯再通過dx工具打包而成的;
解壓下載的dex2jar,將classes.dex復制到dex2jar.bat所在目錄。在命令行下定位到dex2jar.bat所在目錄
運行 dex2jar.bat classes.dex
生成 classes.dex.dex2jar.jar

2.反編譯apk生成程序的源代碼和圖片、XML配置、語言資源等文件
還是下載工具,這次用到的是apktool

具體步驟:
將下載的兩個包解壓到同一個文件夾下,應該會有三個文件:aapt.exe,apktool.bat,apktool.jar
1.解壓縮下載的兩個文件包,apktool-install-windows-r04-brut1.tar解壓縮後得到的包里有aapt.exe 和apktool.bat.(注意要把apktool1.4.1.tar解壓後的一個.jar 文件到解壓後的\apktool-install-windows-r04-brut1文件夾里)
2.特別注意:你要反編譯的文件一定要放在C盤的根目錄里

『伍』 反編譯之後無法回編譯是怎麼回事

使用apktool進行apk的反匯編時,沒有出現問題(有問題的自行解決),

但是進行回匯編時出現:

F:\apktool>apktool b Hello Hello.apk
Exception in thread "main" brut.androlib.AndrolibException: brut.directory.PathN
otExist: apktool.yml
at brut.androlib.Androlib.readMetaFile(Unknown Source)
at brut.androlib.Androlib.build(Unknown Source)
at brut.androlib.Androlib.build(Unknown Source)
at brut.apktool.Main.cmdBuild(Unknown Source)
at brut.apktool.Main.main(Unknown Source)
Caused by: brut.directory.PathNotExist: apktool.yml
at brut.directory.AbstractDirectory.getFileInput(Unknown Source)
... 5 more
經驗證是,反匯編時沒有生成apktool.yml
進行反匯編時,改用命令apktool d -r xx.apk xx便可以解決(加上了-r選項)

『陸』 回編譯出現這個該怎麼破

正在回編譯apk

I: Checking whether sources has changed...
I: Smaling...
I: Checking whether resources has changed...
I: Building resources...
C:\Users\Administrator\Desktop\Apktool\APK\res\values\styles.xml:61: error: Erro
r retrieving parent for item: No resource found that matches the given name *Wid
get.AppCompat.Base*.
C:\Users\Administrator\Desktop\Apktool\APK\res\values\styles.xml:101: error: Err
or retrieving parent for item: No resource found that matches the given name *Wi
dget.AppCompat.Base*.
C:\Users\Administrator\Desktop\Apktool\APK\res\values\styles.xml:149: error: Err
or retrieving parent for item: No resource found that matches the given name *Wi
dget.AppCompat.Base*.
C:\Users\Administrator\Desktop\Apktool\APK\res\values\styles.xml:192: error: Err
or retrieving parent for item: No resource found that matches the given name *Wi
dget.AppCompat.Base*.
C:\Users\Administrator\Desktop\Apktool\APK\res\values\styles.xml:208: error: Err
or retrieving parent for item: No resource found that matches the given name *Wi
dget.AppCompat.Base.DropDownItem*.
C:\Users\Administrator\Desktop\Apktool\APK\res\values\styles.xml:234: error: Err
or retrieving parent for item: No resource found that matches the given name *Wi
dget.AppCompat.Base*.
C:\Users\Administrator\Desktop\Apktool\APK\res\values\styles.xml:241: error: Err
or retrieving parent for item: No resource found that matches the given name *Wi
dget.AppCompat.Light.Base*.
C:\Users\Administrator\Desktop\Apktool\APK\res\values\styles.xml:260: error: Err
or retrieving parent for item: No resource found that matches the given name *Te
xtAppearance.AppCompat.Base*.
C:\Users\Administrator\Desktop\Apktool\APK\res\values\styles.xml:293: error: Err
or retrieving parent for item: No resource found that matches the given name *Wi
dget.AppCompat.Base*.
C:\Users\Administrator\Desktop\Apktool\APK\res\values-v14\styles.xml:52: error:
Error retrieving parent for item: No resource found that matches the given name
*Widget.AppCompat.Base*.
C:\Users\Administrator\Desktop\Apktool\APK\res\values\styles.xml:487: error: Err
or retrieving parent for item: No resource found that matches the given name *Th
eme.AppCompat.Base*.
Exception in thread "main" brut.androlib.AndrolibException: brut.androlib.Androl
ibException: brut.common.BrutException: could not exec command: [aapt, p, --min-
sdk-version, 9, --target-sdk-version, 19, -F, C:\Users\ADMINI~1\AppData\Local\Te
mp\APKTOOL2234454519160668885.tmp, -0, arsc, -I, C:\Users\Administrator\apktool\
framework\1.apk, -S, C:\Users\Administrator\Desktop\Apktool\APK\res, -M, C:\User
s\Administrator\Desktop\Apktool\APK\AndroidManifest.xml]
at brut.androlib.Androlib.buildResourcesFull(Androlib.java:358)
at brut.androlib.Androlib.buildResources(Androlib.java:283)
at brut.androlib.Androlib.build(Androlib.java:206)
at brut.androlib.Androlib.build(Androlib.java:176)
at brut.apktool.Main.cmdBuild(Main.java:228)
at brut.apktool.Main.main(Main.java:79)
Caused by: brut.androlib.AndrolibException: brut.common.BrutException: could not
exec command: [aapt, p, --min-sdk-version, 9, --target-sdk-version, 19, -F, C:\
Users\ADMINI~1\AppData\Local\Temp\APKTOOL2234454519160668885.tmp, -0, arsc, -I,
C:\Users\Administrator\apktool\framework\1.apk, -S, C:\Users\Administrator\Deskt
op\Apktool\APK\res, -M, C:\Users\Administrator\Desktop\Apktool\APK\AndroidManife
st.xml]
at brut.androlib.res.AndrolibResources.aaptPackage(AndrolibResources.jav
a:357)
at brut.androlib.Androlib.buildResourcesFull(Androlib.java:336)
... 5 more
Caused by: brut.common.BrutException: could not exec command: [aapt, p, --min-sd
k-version, 9, --target-sdk-version, 19, -F, C:\Users\ADMINI~1\AppData\Local\Temp
\APKTOOL2234454519160668885.tmp, -0, arsc, -I, C:\Users\Administrator\apktool\fr
amework\1.apk, -S, C:\Users\Administrator\Desktop\Apktool\APK\res, -M, C:\Users\
Administrator\Desktop\Apktool\APK\AndroidManifest.xml]
at brut.util.OS.exec(OS.java:89)
at brut.androlib.res.AndrolibResources.aaptPackage(AndrolibResources.jav
a:355)
... 6 more

按任意鍵返回目錄

『柒』 反編譯出源代碼後,怎樣修改並且編譯回去

反編譯完成並且修改代碼完成後,輸入代碼:apktool d framework-res 即可完成回編譯

回編譯後的新的 apk在framework/dis 文件夾裡面

如果反編譯的是系統文件,比如,SystemUI.apk 那麼必須進行掛載框架,反編譯時,必須敲入一下命令:(然後再重復7-9步驟)
apktool if framework-res.apk
apktool if SystemUI.apk

對於三星手機(比如9100、9108/9100G),如果反編譯SystemUI.apk要敲入一下命令進行框架掛載apktool if framework-res.apk
apktool if twframework-res.apk
apktool if SystemUI.apk

回編譯的命令是 apktool b XXX (沒有後面的apk後綴)反編譯的命令是 apktool d xxx (有後面的apk)

『捌』 回編譯這是什麼意思

我發現。。。。
你自己看吧。。。。
1:反編譯非系統apk前需要把APK命名為123.apk
2:反編譯系統apk時需要將Rom的framework-res.apk放置在 此目錄下,選擇數字5執行安裝! 如果是HTC的Rom,你還需要將com.htc.resources.apk也 安裝一次!
3:反編譯之前如果目錄里有上次反編譯產生的apk,framework 文件夾清除,否則不能正常反編譯!數字7可以快速清理!
4: 路徑默認放在D盤根目錄下面,大家不要自己改動否則可能會出現一些文件丟失的情況!

『玖』 有什麼軟體可以直接反編譯軟體,而且還要可以回編譯。

工具/原料

電腦必須裝JAVA

JAVA電腦環境教程

apktool


方法/步驟

1. 配置好JAVA環境變數,下載:apktool 解壓的文件放在C盤根目錄的apktool文件夾里(apktool文件夾自己創立)

打開命令提示符,(開始-運行-輸入cmd)


2. 輸入:cd apktool 系統指令到了apktool文件夾(這里就是為什麼要把解壓的apktool解壓的文件放到apktool文件夾的原因,當然你也可以自命名文件夾的名稱,那麼比如arc,那麼指令就變成了:cd arc 前提是你必須把apktool解壓的文件放到這個文件夾裡面)


3. 使用RE管理器把系統裡面的framework-res.apk 與 SystemUI.apk 提取出來放在apktool文件夾裡面


4. 如果只是想反編譯framework-res.apk

輸入apktool if framework-res.apk(框架的建立)


5. 開始最重要的反編譯,輸入指令,apktool d framework-res.apk

(反編輯的APK一定要用沒換過圖片的,否則回編輯失敗)


6. 最後反編譯完成


7. 修改代碼完成後,輸入代碼:apktool d framework-res 即可完成回編譯


8. 如果反編譯的是系統文件,比如,SystemUI.apk 那麼必須進行掛載框架,反編譯時,必須敲入一下命令:(然後再重復4-7步驟)

apktool if framework-res.apk

apktool if SystemUI.apk


9. 對於三星手機(比如9100、9108/9100G),如果反編譯SystemUI.apk要敲入一下命令進行框架掛載apktool if framework-res.apk

apktool if twframework-res.apk

apktool if SystemUI.apk


10. 回編譯的命令是 apktool b XXX (沒有後面的apk後綴)反編譯的命令是 apktool d xxx (有後面的apk)

熱點內容
安卓手機怎麼注冊蘋果雲 發布:2024-11-15 01:05:00 瀏覽:407
資料庫設計模板 發布:2024-11-15 00:47:25 瀏覽:825
編程的悟性 發布:2024-11-15 00:47:24 瀏覽:733
主流可編譯語言 發布:2024-11-15 00:42:23 瀏覽:729
excel緩存清除 發布:2024-11-15 00:39:53 瀏覽:486
機械鍵盤可編程 發布:2024-11-15 00:39:09 瀏覽:912
php判斷字元開頭 發布:2024-11-15 00:35:33 瀏覽:507
網易蘋果游戲怎麼轉移到安卓 發布:2024-11-15 00:07:52 瀏覽:270
win7php環境搭建 發布:2024-11-15 00:06:55 瀏覽:17
erpjava 發布:2024-11-14 23:52:23 瀏覽:253