ขั้นตอนที่ 1:
D:\projects\Phonegap\Example> cordova plugin rm org.apache.cordova.console --save
เพิ่ม--save
เพื่อที่จะเอาปลั๊กอินออกจากconfig.xml
ไฟล์
ขั้นตอนที่ 2:
ในการสร้าง build build สำหรับ Android ขั้นแรกเราต้องทำการเปลี่ยนแปลงเล็กน้อยกับAndroidManifest.xml
ไฟล์ที่พบใน platforms / android แก้ไขไฟล์และเปลี่ยนบรรทัด:
<application android:debuggable="true" android:hardwareAccelerated="true" android:icon="@drawable/icon" android:label="@string/app_name">
และเปลี่ยนandroid:debuggable
เป็นfalse
:
<application android:debuggable="false" android:hardwareAccelerated="true" android:icon="@drawable/icon" android:label="@string/app_name">
ตั้งแต่คอร์โดวา 6.2.0 ลบ Android: แท็ก debuggable ได้อย่างสมบูรณ์ นี่คือคำอธิบายจาก Cordova:
คำอธิบายสำหรับปัญหาประเภท "HardcodedDebugMode": เป็นการดีที่สุดที่จะปล่อยให้ Android: แอตทริบิวต์ที่ debuggable จากรายการ หากคุณทำเช่นนั้นเครื่องมือจะแทรก android โดยอัตโนมัติ: debuggable = true เมื่อสร้าง APK เพื่อดีบักบนอีมูเลเตอร์หรืออุปกรณ์ และเมื่อคุณดำเนินการสร้างการเผยแพร่เช่นการส่งออก APK มันจะตั้งค่าเป็นเท็จโดยอัตโนมัติ
หากในอีกทางหนึ่งคุณระบุค่าเฉพาะในไฟล์ Manifest เครื่องมือจะใช้มันเสมอ สิ่งนี้สามารถนำไปสู่การเผยแพร่แอปของคุณโดยใช้ข้อมูลการดีบักโดยไม่ตั้งใจ
ขั้นตอนที่ 3:
ตอนนี้เราสามารถบอกคอร์โดว่าเพื่อสร้างงานสร้างของเรา:
D:\projects\Phonegap\Example> cordova build --release android
จากนั้นเราสามารถหาไฟล์ APK platforms/android/ant-build
ไม่ได้ลงนามใน ในตัวอย่างของเราไฟล์คือplatforms/android/ant-build/Example-release-unsigned.apk
ขั้นตอนที่ 4:
หมายเหตุ: เรามีที่เก็บคีย์ของเราkeystoreNAME-mobileapps.keystore
ใน Git Repo นี้หากคุณต้องการสร้างใหม่โปรดดำเนินการตามขั้นตอนต่อไปนี้
การสร้างคีย์:
ไวยากรณ์:
keytool -genkey -v -keystore <keystoreName>.keystore -alias <Keystore AliasName> -keyalg <Key algorithm> -keysize <Key size> -validity <Key Validity in Days>
EGS:
keytool -genkey -v -keystore NAME-mobileapps.keystore -alias NAMEmobileapps -keyalg RSA -keysize 2048 -validity 10000
keystore password? : xxxxxxx
What is your first and last name? : xxxxxx
What is the name of your organizational unit? : xxxxxxxx
What is the name of your organization? : xxxxxxxxx
What is the name of your City or Locality? : xxxxxxx
What is the name of your State or Province? : xxxxx
What is the two-letter country code for this unit? : xxx
จากนั้นสร้างที่เก็บคีย์ด้วยชื่อเป็น NAME-mobileapps.keystore
ขั้นตอนที่ 5:
วางที่เก็บคีย์ที่สร้างขึ้น
คอร์โดวารุ่นเก่า
D:\projects\Phonegap\Example\platforms\android\ant-build
Cordova รุ่นใหม่
D:\projects\Phonegap\Example\platforms\android\build\outputs\apk
หากต้องการลงชื่อ APK ที่ไม่ได้ลงชื่อให้ใช้เครื่องมือ jarsigner ซึ่งรวมอยู่ใน JDK ด้วย:
ไวยากรณ์:
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore <keystorename> <Unsigned APK file> <Keystore Alias name>
EGS:
D:\projects\Phonegap\Example\platforms\android\ant-build> jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore NAME-mobileapps.keystore Example-release-unsigned.apk xxxxxmobileapps
หรือ
D:\projects\Phonegap\Example\platforms\android\build\outputs\apk> jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore NAME-mobileapps.keystore Example-release-unsigned.apk xxxxxmobileapps
Enter KeyPhrase as 'xxxxxxxx'
นี่เป็นสัญญาณของ apk
ขั้นตอนที่ 6:
ในที่สุดเราต้องเรียกใช้เครื่องมือจัดแนวซิปเพื่อเพิ่มประสิทธิภาพ APK:
D:\projects\Phonegap\Example\platforms\android\ant-build> zipalign -v 4 Example-release-unsigned.apk Example.apk
หรือ
D:\projects\Phonegap\Example\platforms\android\ant-build> C:\Phonegap\adt-bundle-windows-x86_64-20140624\sdk\build-tools\android-4.4W\zipalign -v 4 Example-release-unsigned.apk Example.apk
หรือ
D:\projects\Phonegap\Example\platforms\android\build\outputs\apk> C:\Phonegap\adt-bundle-windows-x86_64-20140624\sdk\build-tools\android-4.4W\zipalign -v 4 Example-release-unsigned.apk Example.apk
ตอนนี้เรามีไบนารี่รุ่นสุดท้ายที่ชื่อว่า example.apk และเราสามารถปล่อยมันได้ที่ Google Play Store