導航:首頁 > 程序命令 > 安卓命令行打包

安卓命令行打包

發布時間:2024-11-25 18:21:58

1. 如何解包/編輯/打包android系統的boot.img文件

Android產品中,內核格式是linux標準的zImage,根文件系統採用ramdisk格式。這兩者在Android下是直接合並在一起取名為boot.img,會放在一個獨立分區當中。這個分區格式是Android自行制定的格式。Android開發時,最標準的做法是重新編譯於內核和根文件系統,然後調用Android給的命令行文件mkbootimg(out/host/linux-x86/bin/)來打包。 在製作手機ROM時,有時會單獨編譯內核或抽出根文件進行修改內容,比如我只編譯內核,其餘的地方不變。這樣重新安裝巨大的Android開發環境實在不劃算。因此很多boot.img解包工具被人開發出來,這一些工具都是把內核和根文件系統從一個現成的boot.img抽取出來,修發後再次打包還原。一.常見的解包工具因為boot.img的格式比較簡單,它主要分為三大塊(有的可能有四塊)因此很多人開發分析工具,有是linuxshell腳本,比如repack-zImage,也有人採用perl,還有C語言編寫的unbootimg, 我使用的是在源碼位置system/core/mkbootimg/下的mkbootimg。為了簡化,藍點工坊把與mkbootimg中打包工具和解包工具以及所包含的libmincrpty庫抽出來,並且重寫一個Makefile,作為開源項目。使用者只需要在linux(需安裝gcc,make,一般是標配)或windows(需要安裝mingw)的命令行執行make,即可產生可執行文件mkbootimg,unpackbootimg。二.解/打包工具使用解包工具:unpackbootimg常見格式 unpackbootimg-i.\tmp\boot.img-o.\out 這一句命令行表示把boot.img解包,所有文件輸出到out目錄下它會解壓出如下文件:boot.img-zImage(內核文件)boot.img-ramdisk.gz(根文件系統打包文件) boot.img-cmdline(mkbootimgcmdline參數) boot.img-pagesize(mkbootimgpagesize參數) boot.img-base(mkbootimgbase參數)打包工具:mkbootimg(Android自帶)常見的命令格式: ./mkbootimg --cmdline'no_console_suspend=1console=null' --kernel zImage --ramdisk boot/boot.img-ramdisk.gz -o boot.img--base02e00000 這句含義是把內核文件zImage和boot目錄下的根文件壓縮包boot.img-ramdisk.gz打包成boot.img. 其中cmdline和base的值均來源於unpackbootimg的結果

2. 寫好的android項目怎麼打包成Apk文件

1.)生成keystore

按照下面的命令行 在C:Program Filesjavajdk1.6.0_10in>目錄下,輸入keytool -genkey -alias android.keystore -keyalg RSA -validity 100000 -keystore android.keystore

參數意義:-validity主要是證書的有效期,寫100000天;空格,退格鍵 都算密碼。

命令執行後會在C:Program FilesJavajdk1.6.0_10in>目錄下生成android.keystore文件。如圖-1

最終生成的apk文件

3. 如何反編譯android應用並重新打包

反編譯android步驟入下:

第一:使用apktool直接反編譯apk

第六:把生成的hellodemo.apk安裝到手機,可以看到主界面上已經顯示的是hello,而不再是你好。說明反編譯重新打包成功!

4. 命令行指定類打包成dex文件

生成了jar後,我們就可以採用命令來生成對應的dex了,我們採用dx命令來生成,這里命令主要在Android sdk下bulid-tools中的dx工具。

出現這個問題是打包生成jar的時候,直接復制了test.class文件到D盤,路徑是test.class與Test.java裡面的packagename不匹配,只需要乎伍碼把com包整個復制出來就ok了。然後使用 jar cvf D:\test.jar D:\歲哪com\demo\Test.class 命令就可以了。(下面也有另一種命令,完成.classs to .dex)

這里只是演示如何分步打包得到dex文件,其實使用gradle命令更加簡橘知單方便。

tip:工程目錄存放在命名中有空格的路徑下面(如:Program Files),Program Files需要使用「 」包裹,否則在讀取class文件或者寫入dex到該目錄會失敗。

另外有命令直接由.class 生成 .dex文件,其中 dx.jar 在 D:\Program Files"\Android\Sdk\build-tools\28.0.3\lib 下面,需要使用絕對路徑

閱讀全文

與安卓命令行打包相關的資料

熱點內容
mcu編譯成庫 瀏覽:296
python官網訪問不了了 瀏覽:98
庫卡邏輯編程 瀏覽:918
加密幣驅動 瀏覽:981
怎麼解壓後的文件夾沒有激活工具 瀏覽:808
java自帶加密 瀏覽:617
關閉表命令 瀏覽:510
黃大龐健康妙方pdf 瀏覽:939
java九宮格演算法 瀏覽:249
encoder轉碼新建文件夾 瀏覽:722
android版本市場佔有率 瀏覽:363
憑訂單號抽獎源碼 瀏覽:201
惠省錢app如何下載 瀏覽:39
春宵秘戲圖pdf 瀏覽:395
android照片牆實現 瀏覽:431
怎麼用一塊錢抹布解壓球 瀏覽:717
百度下沒密碼文件怎麼解壓 瀏覽:81
拷貝容器外的文件夾 瀏覽:145
執行命令後如何取消 瀏覽:593
java二進制對象 瀏覽:598