簡體   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