繁体   English   中英

Phonegap构建cordova.js

[英]Phonegap build cordova.js

我正在开发Phonegap Build应用程序。 对于android文件,当我尝试编译zip文件时,APK文件始终包含3个javascript文件:phonegap.js cordova.js ...但是这三个文件的内容完全相同。 我如何删除两个冗余js文件以优化我的应用程序?

仅供参考, 根据开发人员的说法,存在冗余文件的原因是为了避免用户混淆:

许多用户包括错误的文件。 允许包含上述任何内容避免了很多混乱-我们认为这足以超过两个额外文件的占用空间。

现在,PhoneGap 2.8引入了cordova.js ,但文件名中没有版本号,因此跟踪了一个低优先级问题,以删除冗余文件(因此,如果您只是等待,它可能很快会自行修复):

增强功能:PhoneGap 2.8引入了不带版本号的cordova.js。 现在,构建可以排除冗余的.js文件。


但是 ,如果您不想等待他们升级构建过程,则可以按照以下说明自行删除文件:

1 使用apktool将APK文件解压缩到本地目录结构中(您需要在计算机上安装Android和Java SDK)- 有关如何解压缩和删除文件的说明

$ \path\to\AndroidSDK\platform-tools\apktool d myApp.apk

2 删除phonegap.jscordova-xxxjs文件(> 2.8.0中未使用的文件)。

3 重新apktool APK,再次使用apktool

$ \path\to\AndroidSDK\platform-tools\apktool b myApp myAppUnsigned.apk
  • 请注意,此时APK尚未签名,因此无法部署到Play商店或任何不允许来自未签名来源的应用的设备。

4 使用您的Android证书重新签署APK文件,以便它是有效的:

使用Java JDK中的jarsigner工具对apk进行签名。 您还需要用于签名应用程序的密钥库和密钥别名以及密码。

jarsigner -verbose -keystore ~/MySigningKey.keystore ~/Desktop/myAppUnsigned.apk myKeyAlias

Enter Passphrase for keystore:

输入密码后,您会看到一堆“签名:”消息放大; 完成后,您将拥有一个已签名的apk文件。

5 最后一步是zip对齐apk文件:

zipalign -v 4 myAppUnsigned.apk myApp.apk

并且应该完成。 您可以将所有这些步骤自动化到批处理/ shell脚本中,以便在构建文件时易于使用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM