android 命令行编程
如果你想了解android上开发一个应用程序所需要的所有环节,在命令行上将这个过程操作一遍是最好的方法,下面你可以扔掉哪个慢腾腾的eclipse,然后建立如下一个auto.cmd文件,运行一下auto.cmd,你的电脑d:\work\njh1文件夹下就会产生一个SNjh.apk文件,该文件会自动安装到你手机上,并自动运行,这需要13个步骤,当然所用的环境为JDK1.7,ADT22.3,SDK API-17,d:盘建立文件夹work,当这些环境配好后就可以正常工作了,并且在系统环境中的path变量中加下如下语句
D:\eclipse-jee-juno-SR2-win32\sdk\tools;
D:\eclipse-jee-juno-SR2-win32\sdk\platform-tools;
D:\eclipse-jee-juno-SR2-win32\sdk\build-tools\19.0.0;
C:\Program Files\Java\jdk1.7.0_45\bin;
下载apkbuilder.bat文件复制到sdk的tools文件夹下
假设android sdk文件夹在D:\eclipse-jee-juno-SR2-win32里面的sdk文件夹下面
===========下面是auto.cmd脚本文件====================================================================
rem 工作区 d:\work
rem 工程文件夹 d:\njh1rem 包 com.njh2
rem 主窗体名称MainActivity
rem 工程Njh
rem 签名包文件SNjh.apk
rem 1.建立环境
set LIB1=D:\eclipse-jee-juno-SR2-win32\sdk\platforms\android-17\android.jar
d:
cd\work
rem 2.建立工程
call android create project -p njh1 -n Njh -k com.njh2 -a MainActivity -t "android-17"
cd njh1
rem 3.编译资源文件
mkdir gen
aapt p -f -m -J gen -S res -I %LIB1% -M AndroidManifest.xml
rem 4.编译java文件
javac -encoding utf-8 -target 1.7 -bootclasspath %LIB1% -d bin src\com\njh2\*.java gen\com\njh2\R.java
rem 5.生成dex运行文件
call dx --dex --output=bin\classes.dex bin
rem 6.生成预编译ap_包
mkdir assets
aapt package -f -S res -I %LIB1% -A assets -M AndroidManifest.xml -F bin\Njh.ap_
rem 7.生成apk文件
call apkbuilder d:\work\njh1\bin\Njh.apk -v -u -z d:\work\njh1\bin\Njh.ap_ -f d:\work\njh1\bin\classes.dex -rf d:\work\njh1\src -nf d:\work\njh1\libs -rj d:\work\njh1\libs
rem 8.生成签名keystore文件
keytool -genkey -alias Njh.keystore -keyalg RSA -validity 1000 -keystore Njh.keystore -dname "CN=com.njh2,OU=Njh,O=localhost,L=w,ST=w,C=CN" -keypass 123456 -storepass 123456
rem 9.生成签名apk文件
jarsigner -verbose -digestalg SHA1 -sigalg MD5withRSA -keystore Njh.keystore -signedjar SNjh.apk d:\work\njh1\bin\Njh.apk Njh.keystore
rem 10.删除手机程序com.njh2
adb uninstall com.njh2
rem 11.安装手机程序SNjh.apk
adb install -r d:\work\njh1\SNjh.apk
rem 12.启动手机程序com.njh2
adb shell am start com.njh2/.MainActivity
rem 13.停止adb服务
adb kill-server
cd..
cmd
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。