android編譯dx
❶ (特別專業的Android修改問題)關於Android中classes.dex反編譯並回編的一個問題
過程應該是不可逆的.
若是能通過修改jar來修改class.dex文件,最終達到修改整個apk程序的目的,那android程序就沒有版權一說了...
❷ android開發環境搭建出錯dx.jar
tools中有文件名為「android」的程序, 運行它, 選擇你要下載的版本, 下載。
❸ android 工程 如何一鍵編譯打包成apk
打包步驟:
1、生成keystore
按照下面的命令行在C:ProgramFilesjavajdk1.6.0_10in>目錄下,輸入keytool-genkey-aliasandroid.keystore-keyalgRSA-validity100000-keystoreandroid.keystore
參數意義:-validity主要是證書的有效期,寫100000天;空格,退格鍵都算密碼。
命令執行後會在C:ProgramFilesJavajdk1.6.0_10in>目錄下生成android.keystore文件。如圖-1
圖-2EclipseAndroid打包工具
接下來的步驟就是不斷的next。下面僅貼出圖片,不解釋。
step2:選擇打包的項目
step3:選擇生成的EclipseAndroid.keystore文件並輸入密碼
step4:選擇aliaskey並輸入密碼
step5:最後選擇生成androidapk文件的目錄及文件名
最終生成的apk文件。
❹ android反編譯時,下面的文件怎麼在cmd里運行
【在命令行下定位到dex2jar.bat所在目錄,運行dex2jar.bat classes.dex】的步驟:win+r鍵,輸入cmd回車(如果是win7,開始-輸入cmd搜索,出現cmd.exe右鍵以管理員運行)彈出的命令框輸入dex2jar.bat所在的盤的盤符+冒號如(f:)括弧內為輸入內容回車,接著輸入cd+dex2jar.bat所在的文件夾名(看你的圖片文件夾名為d)cd d回車,接著可以使用dex2jar.bat命令了(輸入dex2jar.bat classes.dex 回車就得到您最後說的「
運行 dex2jar.bat classes.dex
,生成classes.dex.dex2jar.jar」
」了
❺ Android手機的apk文件中的class.dex文件是什麼是做什麼用的呢
簡單說就是優化後的android版.exe。每個apk安裝包里都有。相對於PC上的java虛擬機能運行.class;android上的Davlik虛擬機能運行.dex。
作用
讓dalvik能夠運行。
dex好處
可以直接用DexClassLoader類載入,動態載入。於是只要在dex上加殼,在程序運行時脫殼,就可以規避靜態反編譯的風險。
(5)android編譯dx擴展閱讀
使用dex文件的原因
在Android系統中,一個App的所有代碼都在一個Dex文件裡面。Dex是一個類似Jar的包,存儲了很多Java編譯位元組碼的歸檔文件。
因為Android系統使用Dalvik虛擬機,所以需要把使用Java Compiler編譯之後的class文件轉換成Dalvik能夠執行的class文件。
❻ myeclipse開發android編譯時提示 failed to load .\bulid tools\27.0.3\dx.jar
應該是沒有創建AVD導致的,你可以在myeclipse上找到AVD Manager,打開然後點擊create新建一個安卓虛擬機,把虛擬機的配置都選好之後再運行項目應該就能正常運行了
❼ 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盤的根目錄里
❽ android 系統開發用什麼ide
1. JavaIDEdroid
JavaIDEdroid是一個IDE(集成開發環境),可以運行於Android上,並且允許你直接在本地創建Android應用,而不需要通過Mac、Windows或Linux上的Android SDK。JavaIDEdroid開始配有aapt工具、Java編譯器、dx工具、DexMerger工具、ApkBuilder、zipsigner庫(該庫同樣有zipalign功能)、SpongyCastle庫、BeanShell Interpreter和JavaRunner。
2. Java Editor
Java Editor是一個非常容易使用的Java編輯器,它功能有限,但它可以彩色語法:函數、變數、方法、常量,支持自動完成。可以打開默認文件擴展jav&java。
3. Terminal IDE
Terminal IDE是一個高度可擴展的終端應用程序。它有完整的Java / C / C++ / HTML / Android開發工具包,並且可以在任何Android設備上運行。它使用命令行,編輯器中設置了C/ java / HTML作為開發人員開發的主要選擇項。
4. DroidEdit
DroidEdit是一個文本和源碼編輯器(類似於PC上的Notepad++),用於安卓平板和手機。DroidEdit支持安卓平板電腦的外部連接鍵盤,如Asus Transformer或其他第三方鍵盤。同時它還支持多種語言, 如C、 C++、 C#、 Java、HTML、CSS、Javascript、Python、Ruby、Lua、LaTeX和SQL。
5. Syntax Highlighted代碼編輯器
Syntax Highlighted支持HTML、CSS、JavaScript、PHP編輯器、Python、Java、C、C++、CoffeeScript、Haskell、Clojure和Groovy。雖然其主要定位是Web這一塊,但是Java編碼員也可以使用它,它本身攜有很多功能,如查找/替換、撤銷和重做功能。
6. Code Peeker Pro:源碼閱讀器
Code Peeker Pro可以讓語法高亮顯示,並允許你查找代碼片段。雖然它不是一個編輯器。但它是一個有用的代碼閱讀器,且被Google Play選中作為教育項目的一部分。Code Peeker Pro可以打開和高亮任何支持的代碼語言,如C/C++ (c、cc、cpp、h、hpp)、C#(c-sharp、csharp、cs)、CSS, Java、JavaScript (js、jscript)、PHP、Python (py)、Ruby (rails、ror)、XML (xml、xaml、xslt、HTML、xhtml)、ActionScript 3 (as3)、AppleScript、Cold Fusion、Delphi/Pascal、Diff/patch files、Erlang、Groovy、JavaFX (jfx)、Perl (pl)、PowerShell (ps)、Sass、Scala、SQL、Terminal scripts (bash、shell、sh、rc、conf)、Visual Basics (vb、vbnet) 和Verilog & System Verilog (v、sv)。
它還可以標記重要代碼的位置、內置一個文件瀏覽器、支持內外部SD卡,同時也支持其他文件瀏覽器,如Dropbox等。
7. Sand IDE Pro
Sand是一個Android平台的Java集成開發環境(IDE)(支持Java1.3到Java1.6,注意的是Android不支持Java1.7)。
Sand IDE是一個Java編輯器,並支持Java關鍵字高亮顯示、顯示行號、撤銷/重做,也是一個全功能的Java編譯器,能夠運行Java程序並支持程序的輸入/輸出。
最近一些新的平板電腦開始採用Intel晶元,不過不用擔心,Sand IDE支持所有類型的CPU架構(x86、ARM、MIPS)。
8. AIDE——Android IDE
AIDE是一個可以直接在自己Android設備上開發應用的IDE,關於它的有互動式編程課程、應用開發的分布教程以及Java編程技巧。你可以直觀的設計應用、用編輯器編寫代碼、實時檢查錯誤、代碼重構、智能代碼導航……。
9. Anacode
Anacode是另一個IDE和源代碼編輯器,支持Java、HTML、CSS、PHP、JavaScript和C/C++,並允許你在Android設備上構建和運行。 你也可以在內置或系統瀏覽器上編寫和測試HTML、JavaScript和CSS,並上傳到FTP。
10. Quoda代碼編輯器
Quoda也類似於Notepad++支持SFTP/FTP(S)服務和雲存儲(如Dropbox和谷歌),語法高亮是通過各種各樣的主題和字體來顯示的,並適用於各種編程語言(包括HTML、XML、CSS、JavaScript、PHP、C、C++、C#、Java、ActionScript、Lisp、Markdown、Haskell等等)。為減少程序員的代碼工作,提高其開發的效率,Quoda提供了代碼模板和片段的支持,並且增加了鍵盤上額外的按鍵,使你能夠提高打字速度。另外,其它值得一提的特性還包括查找及替換、注釋及取消注釋、HTML文件預覽、網站源碼下載、HTML清潔器等。
❾ android系統 主要有哪幾部分
android系統分為四部分,從高到低分別是:
1、Android應用層
2、Android應用框架層
3、Android系統運行層
4、Linux內核層
Android系統構架主要應用於ARM平台,但不僅限於ARM,通過編譯控制,在X86、MAC等體系結構的機器上同樣可以運行。
(9)android編譯dx擴展閱讀:
Android運行庫
Android包括了一個核心庫,該核心庫提供了JAVA編程語言核心庫的大多數功能。
每一個Android都擁有一個獨立的Dalvik虛擬機實例。Dalvik被設計成一個設備可以同時高效地運行多個虛擬系統。Dalvik虛擬機執行(.dex)的Dalvik可執行文件,該格式文件針對小內存使用做了優化。
同時虛擬機是基於寄存器的,所有的類都經由JAVA編譯器編譯,然後通過SDK中的「dx」工具轉化成.dex格式由虛擬機執行。