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

不編譯odex

發布時間: 2022-06-08 07:54:08

㈠ Android編譯是不是生成odex的設置

Android編譯是否生成odex的設置

默認編譯odex版本,如果需要非odex版本,請將device/huawei/k3v2_s10/BoardConfig.mk如下兩個變數的值修改為:
DISABLE_DEXPREOPT := true
WITH_DEXPREOPT := false
其它說明
A. device/hisi/k3v2oem1/下面的配置文件不再使用,對應的配置文件在device/huawei/k3v2_s10/目錄,以後如果需要修改配置文件, 請在該目錄下進行修改。
B. out/target/proct/目錄下的產品編譯鏡像k3v2oem1不再使用,對應華為自己的產品鏡像,如out/target/proct/hws10101u
C. 【編APK,不生成odex】
目前庫上的代碼編譯apk時,同時生成了apk和odex,push/install進去不生效。
解決方法:
(1不生成odex,只生成apk,將 LOCAL_DEX_PREOPT 的值改為 false 即可。
即 build\core\package.mk 中156行改為 LOCAL_DEX_PREOPT := false。
照上述修改後,全部重新編譯,後續就可以mm單獨編譯apk方便調試了。
(2如果時間緊,又不想全編重新編譯怎麼辦?
在相應的apk代碼路徑的Android.mk文件中加入WITH_DEXPREOPT := false。
添加後mm重新編譯生成apk即可。
【編JAR包,不生成odex】
目前庫上的代碼編譯framework時,同時生成了JAR和odex,此時push進去開機起不來。
解決方法:
編譯時只生成jar包,不生成odex,即 build/core/java_library.mk 中37行改為 LOCAL_DEX_PREOPT := false。照上述修改後,全部重新編譯,後續就可以mm單獨編譯jar包方便調試了

㈡ 安卓7.1後還要不要odex化

1,這個就是自己直接升級就行,前幾天自己用應用寶找東西的時候就見這個了, 2,用手機安裝一個應用寶,在首頁上直接搜索下啥的,然後打開就能用了,各種的版本也是挺多的,然後玩的時候自己就是注意下啥的就行了,也挺方便的

㈢ 如何配置安卓模擬器 dex文件不被優化成odex

使用靠譜助手不會出現這個問題,這里有教程和下載http://www.zhuantilan.com/zt/kaopuzhushoujiaocheng/

㈣ 安卓反編譯framework需要合並odex嗎,我用的電腦apktool,回編後直接用re替換到系統可以嗎

可以 啊,

㈤ 反編譯.odex是 出現了下面的錯誤,意思是 缺少core.odex文件 但我已經把framework下的所有文件復制到

要先把core.apk和core.odex合並之後再進行反編譯,不然就會提示這個。

㈥ 怎麼讓dex文件變成odex文件dexopt

簡單來說odex的作用是優化後的dex 文件,可以提高載入速度。現在一般第三方ROM都把APK和odex合並起來了,可以加快軟體的啟動速度,預先提取,減少對RAM的佔用,因為沒有odex的話,系統要從apk包中提取dex再運行。如果你的odex導出可能有問題,沒有跟原本配在一起的APK合並在一起,導致導入的時候安裝不了。

ODEX優點
1.刷完機首次進入系統的時間會縮短一些。文件的運行速度應該也有所提升。
2.APK文件不能單獨安裝,並且如果反編譯APK文件,一般也只能得到資源文件。可以說是起到一定的保護作用,避免被肆意修改和使用。這樣做可以使其廠商保證一定的反盜版,因為沒有dex文件的apk是無法正常安裝的。
3.會增加一些可安裝應用的空間,雖然不是很多。
4.某些機身內存太小的手機優化的時候可以刪除dex文件來達到製作大內存包的目的,但是這種大內存包會使手機軟體啟動速度變慢。適合不追求速度,需要更多內存裝軟體的用戶。
效果
Odex化後系統啟動和程序運行速度大大提高,穩定性不變。因此推薦做Odex化。
一般來說官方rom都是odex化的rom(含Odex文件),而定製rom大部分都是deodex化的(無odex文件)。兩者應該各有優點吧,貌似現在也沒有統一的說法。官方rom大部分每個apk對應一個.odex文件,而deodex化的rom裡面只有一個apk,把.odex轉換成classes.dex放到apk包裡面了。所以 odex rom的.apk+.odex=deodex化rom的1個.apk (簡單地來說,其實就上一個合並的過程)
odex文件的生成
1、首先配置JAVA環境,相信大家都會

2、下載工具
adb工具包

dexopt-wrapper工具
3、用數據線將手機與電腦連接,手機中的設置----應用程序設置---開發下的USB調試、允許模擬地點要選上;將需要生成ODEX文件的***.apk文件放到 手機的data/local目錄下(與dexopt-wrapper同一個目錄)。
4:在電腦上(XP系統):
「運行」——cmd(回車)
輸入 adb shell(回車)
Su(回車)
cd data/local(回車)
dexopt-wrapper ***.apk ***.odex (回車)(***.apk與***.odex中的***同名)

就這樣ODEX就生成了(看不到的話退出local再進入local)
5、剪貼出來用winrar刪除****.apk 里的classes.dex。
這樣apk+odex就生成了。將這同名不同後綴的兩文件拷到system\app 或data\app中修改許可權重啟手機就可用了。
Android的ROM中有很多odex文件,相對於APK中的dex文件而言這個odex有什麼作用呢? 如果你仔細觀察會發現文件名時一一對應的,同時那些對應的apk文件中沒有dex文件。這樣做可以使其廠商保證一定的反**,因為沒有沒有dex文件的apk是無**常安裝的,而廠商直接將odex和不完整的apk文件放到手機rom固化到/system/bin中可以讓一般用戶無**常導出使用

㈦ [求助]大神們誰知道怎麼反編譯framework.odex啊

錯誤的第一行信息 提示你 缺少文件..在命令中加入 java -Xmx512m -jar baksmali.jar -c:core-junit.odex(好像是這個名字反正在手機的system/framework/下面) -x framework.odex 這樣就可以了.如果在報錯 那麼看缺少什麼 就接著在-c後面拼 這個我也是研究了2天.在網上找了很久 都沒有找到相關信息.後來摸索出來的..希望能給你或者以後看到的人一個幫助

㈧ 如何反編譯Android 的apk/dex/odex,獲得源碼

關於APK,DEX的介紹

當我們編譯一個安卓項目的時候,整個項目會被打包成一個 .apk文件。這個文件其實是一個標準的zip文件,因此可以用解壓縮工具打開。這個apk文件一般都包含程序的代碼(在classes.dex文件中), 資源文件, 證書, manifest 文件等。 其中對我們最重要的是classes.dex文件,因為編譯後的位元組碼(bytecode)都是放在這個文件中。我們後面講的反編譯就是針對這個dex文件來的。

反編譯普通的APK文件:

對於普通的APK/DEX文件的反編譯,其實工具有很多, 包括:

  • ByteCode Viewer: 一個可視化的集成工具,說實話,不太好用,不夠穩定,生成代碼質量中等。

  • dex2jar + jd_gui: 這兩個工具組合還可以, 用起來比ByteCode Viewer麻煩一些,但比較穩定,生成代碼質量中等。

  • 在線反編譯工具JADX: http://www.javadecompilers.com/apk , 這是基於SourceForge上的JADX的開源工具來實現的。本來以為在線反編譯質量不會好,但出人意料的是:JADX是我發現的最好的反編譯工具, 不但使用簡單(直接上傳,轉換,下載就ok),而且反編譯出來的代碼質量很高,特別是變數命名方面,可讀性很不錯。

  • 反編譯ODEX文件:

    Android 5.0 Lollipop以後,Google用ART代替了以前的Dalvik,對於普通的app來說我們仍然可以用上面的方法來把dex文件反編譯成Java源代碼。但對於系統預裝的App,特別是類似應用商店,播放器等, 你會發現這些應用的apk文件中找不到對應的classes.dex文件,而是會發現在其子目錄下有個.odex文件。 那如何反編譯這個odex文件呢?我通過google查了查,知道應該用baksmali,但從github上下載了幾個版本都不行,報各種不同錯誤。經過反復搜索和嘗試,終於找到了這篇文章
    : http://www.naldotech.com/how-to-deodex-applications-on-android-5-0-lollipop/ 。 具體方法如下:

    1. 從這里下載工具包, 解壓縮到本地。 這里的baksmali的版本是2.0.3. 不同版本的baksmali針對的Android內核不同。有時候高版本反倒不好用。

    2. 打開工具所在目錄, 按住shift鍵, 點擊滑鼠右鍵,打開windows命令窗口

    3. 把 odex文件拷貝到該目錄

    4. 在命令窗口運行: oat2dex.bat *.odex. 正常情況下,應該顯示OK等信息。如果報錯的話,說明這個文件無法轉換,後面的也不用試了。

    5. 運行 oat2dex.bat *.odex temp.dex . 運行後會創建一個temp.dex文件。

    6. 運行 java -jar baksmali-2.0.3.jar -a 21 -x temp.dex -o source . 運行後會創建一個source的文件夾,並將temp.dex反編譯到該文件夾。-a 21 表明的是Android內核的版本21

    7. 運行 java -jar small-2.0.3.jar -a 21 source -o classes.dex, 反編譯為classes.dex文件。

    需要注意的是:由這種方式反編譯成的classes.dex 文件相比原生的classes.dex 還是缺少了些信息,因此反編譯這種classes.dex 文件後生成的java代碼可讀性會更差些。

    8. 用在線工具JADX 來把 classes.dex 最終反編譯為java代碼。

㈨ 怎麼設置android去掉dexopt優化

簡單來說odex的作用是優化後的dex文件,可以提高載入速度。現在一般第三方ROM都把APK和odex合並起來了,可以加快軟體的啟動速度,預先提取,減少對RAM的佔用,因為沒有odex的話,系統要從apk包中提取dex再運行。如果你的odex導出可能有問題,沒有跟原本配在一起的APK合並在一起,導致導入的時候安裝不了。ODEX優點1.刷完機首次進入系統的時間會縮短一些。文件的運行速度應該也有所提升。2.APK文件不能單獨安裝,並且如果反編譯APK文件,一般也只能得到資源文件。可以說是起到一定的保護作用,避免被肆意修改和使用。這樣做可以使其廠商保證一定的反盜版,因為沒有dex文件的apk是無法正常安裝的。3.會增加一些可安裝應用的空間,雖然不是很多。4.某些機身內存太小的手機優化的時候可以刪除dex文件來達到製作大內存包的目的,但是這種大內存包會使手機軟體啟動速度變慢。適合不追求速度,需要內存裝軟體的用戶。效果Odex化後系統啟動和程序運行速度大大提高,穩定性不變。因此推薦做Odex化。一般來說官方rom都是odex化的rom(含Odex文件),而定製rom大部分都是deodex化的(無odex文件)。兩者應該各有優點吧,貌似現在也沒有統一的說法。官方rom大部分每個apk對應一個.odex文件,而deodex化的rom裡面只有一個apk,把.odex轉換成classes.dex放到apk包裡面了。所以odexrom的.apk+.odex=deodex化rom的1個.apk(簡單地來說,其實就上一個合並的過程)odex文件的生成1、首先配置JAVA環境,相信大家都會2、下載工具adb工具包dexopt-wrapper工具3、用數據線將手機與電腦連接,手機中的設置----應用程序設置---開發下的USB調試、允許模擬地點要選上;將需要生成ODEX文件的***.apk文件放到手機的data/local目錄下(與dexopt-wrapper同一個目錄)。4:在電腦上(XP系統):「運行」——cmd(回車)輸入adbshell(回車)Su(回車)cddata/local(回車)dexopt-wrapper***.apk***.odex(回車)(***.apk與***.odex中的***同名)就這樣ODEX就生成了(看不到的話退出local再進入local)5、剪貼出來用winrar刪除****.apk里的classes.dex。這樣apk+odex就生成了。將這同名不同後綴的兩文件拷到system\app或data\app中修改許可權重啟手機就可用了。Android的ROM中有很多odex文件,相對於APK中的dex文件而言這個odex有什麼作用呢?如果你仔細觀察會發現文件名時一一對應的,同時那些對應的apk文件中沒有dex文件。這樣做可以使其廠商保證一定的反**,因為沒有沒有dex文件的apk是無**常安裝的,而廠商直接將odex和不完整的apk文件放到手機rom固化到/system/bin中可以讓一般用戶無**常導出使用

㈩ 反編譯官方framework.apk成功但不能回編譯,不修改回編譯也無法成功

1、合並odex了么
2、9.png文件替換沒
3、換高版本的apktool

以後問東西把錯誤截圖貼出來,回答個問題還要靠猜很蛋疼..........

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:645
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:936
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:632
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:821
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:731
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1066
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:299
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:160
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:850
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:763