在Phonegap 3.x CLI上构建android版本apk
如何使用Phonegap 3.x CLI在本地构建android应用程序,准备发布?我检查了在项目的platforms/android目录中生成的bin文件夹,它只有.debug APKs在Phonegap 3.x CLI上构建android版本apk,android,cordova,cordova-cli,Android,Cordova,Cordova Cli,如何使用Phonegap 3.x CLI在本地构建android应用程序,准备发布?我检查了在项目的platforms/android目录中生成的bin文件夹,它只有.debug APKs 顺便说一句,我使用这个命令:phonegap local build android您可以尝试这个命令,它应该构建并运行应用程序(因此应该创建.apk): phonegap本地运行android 这适用于Phonegap 3.0.x到3.3.x。有关PhoneGap 3.4.0及更高版本的信息,请参阅 在Ph
顺便说一句,我使用这个命令:
phonegap local build android
您可以尝试这个命令,它应该构建并运行应用程序(因此应该创建.apk):
phonegap本地运行android
这适用于Phonegap 3.0.x到3.3.x。有关PhoneGap 3.4.0及更高版本的信息,请参阅
在Phonegap文档中找到部分答案。整个过程如下:
key.store=/Path/to/KeyStore/myapp-release-key.keystore
key.alias=myapp
build--release
。这将在/path/to/your/project/platforms/android/bin文件夹中创建一个名为YourAppName-release-unsigned.APK的未签名版本APK感谢@LaurieClark提供的链接(),以及发布该链接的博主,因为它让我走上了正轨。在PhoneGap 3.4.0中,您可以调用:
cordova build android --release
如果您在“platforms/android”目录中设置了“ant.properties”文件,如下所示:
key.store=/Path/to/KeyStore/myapp-release-key.keystore
key.alias=myapp
然后,系统会提示您输入密钥库密码,输出文件(myapp release.apk)最终会出现在“platforms/android/ant build”目录中,该目录已签名、对齐并准备部署。我只是想了很多,因为我遇到了同样的问题,但在我的安装中,“cordova”命令从来都不可用,而且“phone gap build android--release”只是忽略了platform/android/ant.properties 因此,在我的平台过滤器中,我发现了一个名为“cordova”的文件夹,其中有一个接受--release参数的“build”二进制文件,它向我索要密钥链,最后我得到了一个已签名并准备生产的APK
这在phone gap网站的任何部分都没有记录,坦率地说,现在我有点讨厌phone gap:(它本应该让事情变得更简单,但一切都很复杂:(跟进@steven anderson 您还可以在ant.properties中配置密码,以便该过程可以完全自动化 因此,如果您在platform\android\ant.properties中输入以下内容
key.store=../../yourCertificate.jks
key.store.password=notSoSecretPassword
key.alias=userAlias
key.alias.password=notSoSecretPassword
我通过将已签名的应用程序复制粘贴到与zipalign相同的目录中来实现这一点。似乎aapt.exe即使给定了路径也找不到源文件。 这不起作用 zipalign-f-v 4 C:…\CordovaApp-release-unsigned.apk C:…\destination.apk 它到达了aapt.exeCordovaApp-release-unsigned.apk,冻结并在返回时返回 “aapt.exeCordovaApp release unsigned.apk”未被识别为内部或外部命令、可操作程序或批处理文件。 这是真的
zipalign-f-v 4 CordovaApp-release-unsigned.apk myappname.apk在cordova 6.2.0中
cd cordova/ #change to root cordova folder
platforms/android/cordova/clean #clean if you want
cordova build android --release -- --keystore="/path/to/keystore" --storePassword=password --alias=alias_name #password will be prompted if you have any
先前的答复: 根据cordova 5.0.0
{
"android": {
"release": {
"keystore": "app-release-key.keystore",
"alias": "alias_name"
}
}
}
然后从目录platforms/android/cordova/
密钥库文件位置相对于平台/android/cordova/
,因此在上述配置中密钥库文件和构建.json
位于同一目录中
keytool-genkey-v-keystore app-release-key.keystore-alias alias_name-keyalg RSA-keysize 2048-validity 10000
我知道这个问题专门询问Phonegap 3.X,但只是作为默认情况下构建的参考。要使用Ant而不是Gradle,可以将其添加到config.xml中:
<preference name="android-build-tool" value="ant" />
构建PhoneGap Android应用程序以部署到Google Play商店
这些步骤适用于Cordova、PhoneGap或Ionic。唯一的区别是,无论在何处调用Cordova
,根据您的特定场景,将其替换为PhoneGap
或Ionic
完成开发并准备部署后,请执行以下步骤:
打开命令行窗口(macOS和Linux上的终端或Windows上的命令提示符)
转到/path/to/your/project/,我们称之为项目根。
在项目根目录下,从插件集中删除“控制台”插件。
命令是:cordova plugin rm cordova plugin Console
在项目根目录下,使用cordova build命令为发布版创建APK。
该命令是:cordova build--release android
上述过程在文件夹ProjectRoot/platforms/android/build/outputs/apk/
在本步骤结束时,您可以将获得的APK上传到Play Store。
注意:作为一个新手或初学者,最后一步对我来说可能有点困惑。可能会遇到一些问题,可能会对这些命令是什么以及在哪里找到它们产生一些疑问
Q1.什么是jarsigner和keytool?
Ans:Android应用程序签名说明确实会明确告诉您jarsigner和keytool都是关于什么的,但如果您在命令行窗口中遇到“command not found error”(命令未找到错误),它不会告诉您在哪里可以找到它们。
因此,如果您已将Java开发工具包(JDK)添加到PATH变量中,只需按照指南中的方式运行命令即可。但是,如果您的PATH中没有Java开发工具包,则始终可以从JDK安装的bin文件夹访问它们
Q2.zipalign在哪里?
Ans:很有可能找不到zipali