sencha cmd 4
环境安装
下载android SDK http://developer.android.com/sdk/index.html
下载ruby http://rubyinstaller.org/downloads/
设置android SDK的环境变量包含tools,platform-tools两个目录
JDK就不说了
创建项目
cd /workspace/app
sencha -sdk
/path/sencha/touch-version generate app MyApp ./
生成证书
keytool -genkey -v -keystore my-release-key.keystore -alias myApp -keyalg RSA -keysize 2048 -validity 10000
sencha app build native
编辑packager.json
"applicationName":"MyApp",
"applicationId":"com.MyApp",
"platform":"Android",
"certificatePath":"my-release-key.keystore",
"certificateAlias":"myApp",
"certificatePassword":"********",
"sdkPath":"C:/software/adt-bundle-windows-x86_64-20140702/sdk",
"androidAPILevel":"15",
然后开始打包Android APK
sencha app build native
或者
sencha app package run packager.json
这两个命令生成的apk大小和apk的位置不同
上面方法打包的apk可用于产品发行
下面方法打包的apk只能用于产品测试,要发行好像是说要用eclipse或其它方法自己打包
sencha cmd 5
cmd 5有两种方法来构建Android应用
环境安装
下载 http://nodejs.org/download/
把nodejs添加到path变量中,还要在C:\Users\administrator\AppData\Roaming\中创建npm目录,运行nmp命令时会提示
npm install -g cordova
npm install -g phonegap
安装ant,官方文档都没说要安装这个
1,命令法
这种方法文档中说将来会废弃不用,不过这种方法我觉得确简单一些,只是重复调用时每次都要写命令
创建项目
cd /workspace/app
sencha -sdk
/path/sencha/touch-version generate app MyApp ./
sencha phonegap init com.MyApp MyApp
此时会自动在app.json中添加builds配置
打开app.json
反注释platform改为"platform": "android",
或者
创建phonegap.local.properties
参考.sencha/app/phonegap.defaults.properties,添加
phonegap.platform=android
phonegap.build.remote=false
然后开始打包Android APK
sencha app build native
或者
sencha app build -run native
会通过adb直接安装到连接的android手机或虚拟机上并打开
这种方法在sencha cmd4上面也能用,不过不太一样在cmd4上不会修改app.json文件,但会添加config.xml到应用根目录,并自动创建
phonegap.local.properties,另外可能需要移除packager.json文件
说到底命令法应该是cmd4上的遗留产物,cmd5上面已经改用app.json配置的,cmd5上的命令法也只是出于兼容目的对配置法的一个包装
2,配置法
创建项目
cd /workspace/app
sencha -sdk
/path/sencha/touch-version generate app MyApp ./
编辑app.json
加入
"builds": {
"native": {
"packager": "phonegap",
"phonegap" : {
"config": {
"platform": "android",
"name":"MyApp",
"id": "com.myapp"
}
}
}
}
然后开始打包Android APK
sencha app build native
或者
sencha app build -run native
会通过adb直接安装到连接的android手机或虚拟机上并打开
关于这一部分sencha cmd 5.0的官方文档描述有误(坑人呀),app.json的配置方法可参考.sencha\app\app.defaults.json
phonegap默认会使用最高的Platform Level 去生成apk,可以在phonegap/config.xml中用
来指定API Level
config.xml会和AndroidManifest.xml文件合并
config.xml参考
http://docs.build.phonegap.com/en_US/configuring_preferences.md.html
AndroidManifest参考
http://developer.android.com/guide/topics/manifest/manifest-intro.html