⑴ 如何打包android apk
做完一個Android項目之後,如何才能把項目發布到Internet上供別人使用呢?我們需要將自己的程序打包成Android安裝包文件--APK(Android Package),其後綴名為".apk"。將APK文件直接上傳到Android模擬器或Android手機中執行即可進行安裝。Android系統要求具有其開發者簽名的私人密鑰的應用程序才能夠被安裝。生成數字簽名以及打包項目成APK都可以採用命令行的方式,但是通過Eclipse中的向導我們會更加方便地完成整個流程,打包發布的過程非常簡單。下面以前面開發的"Hello World"為例,演示如何生成APK。
右鍵單擊項目名稱,選擇"Android Tools",再選擇"Export Signed Application Package…",如下圖所示。
進入左圖所示頁面,單擊"Next>"按鈕,進入如右圖所示窗口。
其中,Location為證書庫將要存放的位置,Password是證書庫的密碼。
打包程序時,系統要求使用數字證書。如果沒有數字證書,我們選擇"Create new keystore"新創建一個證書庫,單擊"Browse…"按鈕選擇證書庫將要保存的位置並填入信息,如左圖所示。單擊"Next>"按鈕,如右圖所示
⑵ 寫好的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文件
⑶ 如何反編譯android應用並重新打包
反編譯android步驟入下:
第一:使用apktool直接反編譯apk
第六:把生成的hellodemo.apk安裝到手機,可以看到主界面上已經顯示的是hello,而不再是你好。說明反編譯重新打包成功!
⑷ 用java或C#調用命令行對android工程進行編譯、打包和簽名,急求!!
Android本身是支持ant打包項目的,並且SDK中自帶一個build.xml文件。
通過該文件,可以對文件進行編譯、打包、安裝等。並且支持多種方式打包,如debug或者release。
一般的,可以按照如下方法進行操作:
首先創建一個Android工程。
工程創建好後,需要為工程添加ant支持,即創建相應的build.xml文件。
這個文件不需要用戶自己創建,只需要執行如下命令即可:
<sdk>/tools/android update project -p <project> -t <target>
其中:
sdk為sdk的安裝目錄,其下的tools/android是我們要使用的命令。
project為項目目錄。
target為項目所使用的android的target id,也就是項目對應的android的版本。
可以將sdk的tools目錄添加到環境變數 ~/.bashrc 文件中,重啟後生效,以後可以直接使用命令了。
可以通過執行以下命令查看當前sdk中所包含的target以及相應id:
android list targets
執行完android update project命令後,會在項目的根目錄下生成相應的ant文件。
主要有build.xml、ant.properties、local.properties三個文件。
如果沒有ant.properties文件,可以自己手動添加。
其中,build.xml文件是進行ant build的主要文件,它引用了其它的文件。
在local.properties文件中定義了sdk.dir屬性,也就是當前使用的sdk的目錄。
在ant.properties文件中,可以定義自己的一些屬性,或者重定義一些屬性。
當然,這兩個屬性文件可有可無,直接定義到build.xml中也沒有關系。
在build.xml中的最後,引用了sdk目錄下的tools/ant/build.xml文件。
這個是sdk默認的build文件,可以將其內容直接拷貝過來,也可以保持當前的引用方式。
項目下的build.xml默認執行的target是help,運行後可以看到相關的幫助信息。
通過幫助信息,可以看到其它可用的target。
一般的,我們需要修改為debug或者release。
修改好之後,再運行build.xml文件,就會執行我們需要的編譯過程了。
build.xml文件的執行方法為:右鍵->Run As->Ant Build。
如果是debug版的話,默認會使用debug方式簽名。
如果是release版的話,需要指定相應的keystore以及私鑰。
否則,最後只能生成一個沒有簽名的apk文件。
設定私鑰庫的方法是,在ant.properties文件中,添加如下內容:
key.store=<keystore>
key.alias=<key>
key.store.password=<keystore pwd>
key.alias.password=<key pwd>
其中:
keystore為私鑰庫文件。
key為簽名需要使用的私鑰。
key.store.password為私鑰庫的密碼。
key.alias.password為私鑰的密碼。
兩個密碼相關的屬性也可以不添加,而只添加私鑰庫及私鑰。
這樣的話,執行時會依次彈出相應的輸入框,提示用戶輸入相應的密碼。
這樣雖然相對繁瑣,但是由於沒有明文指定密碼,對私鑰庫的保護會更好一些。
如果項目引用了第三方庫的話,只需要在項目根目錄創建libs文件夾並將其放入即可。
如果是jar庫,直接放到libs目錄下;如果是so庫,需要放到libs的名為armeabi的子目錄下。
也可以通過設定相應的屬性來指定第三方庫的位置,其默認都是libs文件夾。
jar.libs.dir為jar類型庫所在的目錄。
native.libs.absolute.dir為so類型庫所在的目錄,即armeabi的父目錄。
如果項目包含了jni代碼,希望在打包時自動重新編譯so庫,可以修改build.xml文件。
修改方法為,在引用sdk的build.xml文件之前添加如下target:
<target name="-pre-build" depends="-ndk-build">
</target>
<target name="-ndk-build">
<exec executable="ndk-build" failonerror="true">
<arg value="clean" />
</exec>
<exec executable="ndk-build" failonerror="true" />
</target>
ndk-build為ndk提供的命令,需要將ndk安裝目錄添加到環境變數中,添加方法同sdk/tools。
生成的so默認會放到libs/armeabi目錄下。
使用默認的build.xml打包apk時,已經包含了混淆、簽名、對齊優化等相關過程。
如果是使用release的方式,最後生成的apk文件已經可以直接發布了。
⑸ 如何用命令行編譯打包生成apk
一、搭建搭建環境
1. 安裝JDK 和 Android SDK
2. 配置環境變數
D:\android-sdk-windows\tools
C:\Program Files\Java\jdk1.6.0_20\bin
3. 例子信息
項目目錄:D:\ProjectDemo
SDK目錄 :D:\android-sdk-windows\platforms\android-8\
二、命令行編譯Android項目
1. 生成R文件
2. Java代碼生成class文件
3. class文件生成dex文件
4. 打包資源
5. 生成apk
6. 創建密匙
7. 簽名apk
⑹ 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文件。
⑺ androidstudio怎麼打包
1.Build -> Generate Signed APK...,打開如下窗口
這里只要輸入幾個必要項
Key store path(生產key文件的保存路徑 )
Key store password(key 存儲密碼)
Key alias(key別名)
Key password(key密碼)
可以輸入機構或個人名字
點擊OK,點擊finish,apk包就生成好了
⑻ 怎樣用eclipse將安卓程序打包為apk
用eclipse軟體打包app安卓客戶端免費下載
鏈接:https://pan..com/s/1XhnUmAQhA468EC4xt29ZmA
Eclipse 是一個開放源代碼的、基於Java的可擴展開發平台。就其本身而言,它只是一個框架和一組服務,用於通過插件組件構建開發環境。幸運的是,Eclipse 附帶了一個標準的插件集,包括Java開發工具(Java Development Kit,JDK)。
⑼ 如何解包/編輯/打包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的結果
⑽ android 3.0 之後 aptbuilider.bat 移除 之後的 用命令打包
1.使用aapt生成R.java類文件:
例:
C:\Snake>aapt p -f -m -J gen -S res -I android.jar -M AndroidManifest.xml
其中
-f -m -J F:\explorer\AndroidByread\gen 代表按覆蓋的形式在gen目錄下生成帶包路徑的R.java,
-S res指定資源文件 ,
-I android.jar 指定使用的android類包,
-M AndroidManifest.xml指定程序的配置文件
2.使用android SDK提供的aidl.exe把.aidl轉成.java文件(如無aidl介面文件可省略):
3.第三步 編譯.java類文件生成class文件:
C:\Snake>javac -classpath android.jar -d bin src\com\example\android\snake\*.java gen\com\example\android\snake\R.java
-classpath android.jar 指定使用的android類包,
-d bin指定生成的類文件的位置 ,後面的兩個都是源文件.
4.使用android SDK提供的dx.bat命令行腳本生成classes.dex文件:
C:\Snake>dx --dex --output=c:\snake\bin\classes.dex c:\snake\bin
第一個參數是生成的目標文件,第二個是class文件所在的目錄(必須使用絕對路徑)
5.生成應用程序apk文件:
C:\Snake>aapt p -f -F snake.apk -v -u -z -M AndroidManifest.xml -S res -A assets -I android.jar
用法同步驟1.
6.把前面生成的classes.dex文件壓縮到apk文件,最終生成可運行的apk應用程序
C:\Snake>aapt add snake.apk bin\classes.dex
7.Android Apk 簽名
Apk簽名首先要有一個keystore的簽名用的文件 。
keystore是由jdk自帶的工具keytool生成的。
具體生成方式參考:
開始->運行 ->cmd->cd到你安裝的jdk的目錄里,我的是C:\Program Files\Java \jdk1.6.0_10\bin
然後輸入:
keytool -genkey -alias asaiAndroid.keystore -keyalg RSA -validity 20000 -keystore asaiAndroid.keystore
-alias 後面跟的是別名這里是 asaiAndroid.store
-keyalg 是加密方式這里是RSA
-validity 是有效期 這里是20000
-keystore 就是要生成的keystore的名稱 這里是asiAndroid.keystore
然後按回車鍵
按回車後首先會提示你輸入的密碼:這個在簽名時要用的,要記住
然後會再確認你的密碼。
之後會依次叫你輸入姓名、組織單位、組織名稱、城市區域、省份名稱、國家代碼 (CN)等。
開始簽名。
在 C:\Program Files\Java\jdk1.6.0_10\bin 還提供一個工具 jarsigner.exe
運行命令給APK簽名:
jarsigner -verbose -keystore asaiAndroid.keystore -signedjar Lotteryonline_signed.apk LotteryOnline.apk asaiAndroid.keystore
-keystore: keystore的名稱
LotteryOnline_signed.apk: 簽名後的APK
LotteryOnline.apk: 簽名前的APK
然後按回車:會要求輸入剛才設置 的密碼,輸入後按回車就開始簽名了。