AndroidKiller反編譯失敗的處理方法

lvxiangan發表於2018-11-29

1、Exception in thread “main” java.lang.ClassCastException

反編譯核心都是apktool,出現以上報錯可能是你反編譯的apk編寫的版本比較高,我們只需要簡單把apktool版本替換到最高 
apktool官網下載


a)下載最新版本apktool到本地

b)替換apktool

 

c)檢查版本號

b)檢查
 

 

 

2. Could not decode attr value,using undecoded value instead:ns=android

中文提示:無法解碼ATTR值,使用未解碼的值 instead: ns=android, name=interpolator

說實話這個我baidu了半天有相似的問題 但沒有人給出正確回答

最後成功的解決方式

刪除deleted C:\Users\你的使用者名稱\apktool\framework裡面的apk 
或者你乾脆整個刪除了,裡面有個垃圾app佔用了。希望能幫助到大家,真的坑,搜到N年都有人問 沒有人解答,解決了 記得給個回覆i~~

3.提示找不到什麼value-23 比如theme

解決方案簡單粗暴 先進value刪掉提示的地方,不行就刪掉整個value23 22 .然後會提示public.xml的幾行 照著刪除即可

 

 

 

 

 

 

 

反編譯用途:
1) 漢化apk應用程式

       漢化apk就是 把 反編譯之後apk 下的res/values資料夾內string.xml檔案的內容 漢化。注意:/values目錄下有可能有多個資料夾:/values-zh-rCN(必須用這個檔名!)。
values-zh是中國地區語言包(包含港澳臺及內地),
values-zh-rCN是中文簡體語言包(只包含內地),
values-zh-rTW是中文繁體語言包(港澳臺)。
用文字編輯器開啟strings.xml,然後你就翻譯吧,把英文描述譯成相應的中文。

如果apk原作者把字元寫在程式碼中,應該把相應的中文字元用16進位制的unicode來表示。例如:把“服務模式”用16進位制的unicode表示就是\u670d\u52a1\u6a21\u5f0f 。每一個漢字用4個字元表示,\u表示為16進位制的unicode碼。好了,正確的漢譯是:
const-string v5, "\u670d\u52a1\u6a21\u5f0f ",網上有中文字元與16進位制unicode碼的對照表或轉換工具。

2) 去掉apk中的廣告

為了去掉程式中的廣告,要修改main.xml檔案與廣告有關的內容。在/res目錄下找到檔案main.xml。關鍵是要把fill_parent改為0.0dip,把wrap_content改為0.0dip,其它內容保持不變即可。
 

 

 

 

 

相關文章