Android กำหนดให้ APK ทั้งหมดต้องลงนามแบบดิจิทัลด้วยใบรับรองก่อนวันที่ ในอุปกรณ์หรือที่มีการอัปเดต เมื่อเผยแพร่โดยใช้แอป Android Bundle คุณต้องรับรอง App Bundle ด้วยการอัปโหลด ก่อนที่จะอัปโหลดไปยัง Play Console และ Play App Signing จะดูแล ที่เหลือ สำหรับแอปที่เผยแพร่โดยใช้ APK บน Play Store หรือแพลตฟอร์มอื่นๆ คุณต้องรับรอง APK ด้วยตนเองเพื่ออัปโหลด
หน้านี้จะแนะนําแนวคิดสําคัญบางส่วนที่เกี่ยวข้องกับ App Signing และ ความปลอดภัย, วิธีรับรองแอปเพื่อเผยแพร่ใน Google Play โดยใช้ Android Studio, และวิธีกำหนดค่า Play App Signing
ต่อไปนี้เป็นภาพรวมระดับสูงของขั้นตอนที่คุณอาจต้องดำเนินการ ลงนามและเผยแพร่แอปใหม่ไปยัง Google Play
- สร้างคีย์การอัปโหลดและคีย์สโตร์
- รับรองแอปด้วยคีย์การอัปโหลด
- กำหนดค่า Play App Signing
- อัปโหลดแอปไปยัง Google Play
- เตรียมพร้อมและ เปิดตัวรุ่นของแอป
แต่หากแอปของคุณเผยแพร่ไปยัง Google Play Store อยู่แล้วด้วย คีย์ App Signing ที่มีอยู่ หรือคุณต้องการเลือกคีย์ App Signing ไม่ให้ Google สร้างแอปใหม่ ให้ทำตามขั้นตอนต่อไปนี้
- ลงนามแอปด้วยคีย์การลงนามของแอป
- อัปโหลดคีย์ Signing ของแอปไปยัง Play App Signing
- (แนะนำ) สร้างและลงทะเบียนใบรับรองการอัปโหลด สำหรับการอัปเดตแอปของคุณในอนาคต
- อัปโหลดแอปไปยัง Google Play
- เตรียมพร้อมและ เปิดตัวรุ่นของแอป
หน้านี้ยังสำรวจวิธีจัดการคีย์ของคุณเองเมื่ออัปโหลดแอปด้วย
กับ App Store อื่นๆ หากคุณไม่ได้ใช้ Android Studio หรือต้องการลงนาม
จากบรรทัดคำสั่ง ดูวิธีใช้งาน
apksigner
Play App Signing
เมื่อใช้ Play App Signing ผลที่เกิดขึ้นคือ Google จะจัดการและปกป้อง App Signing ของคุณ ให้คุณและใช้ในการรับรอง APK สำหรับการเผยแพร่ และเนื่องจากแอป จะเลื่อนการสร้างและรับรอง APK ไปยัง Google Play Store ออกไปก่อน คุณจะต้องทำดังนี้ กำหนดค่า Play App Signing ก่อนที่จะอัปโหลด App Bundle ดังนั้น จะช่วยให้คุณได้รับประโยชน์จากสิ่งต่อไปนี้
- ใช้ Android App Bundle และรองรับโหมดการนำส่งขั้นสูงของ Google Play Android App Bundle ทำให้แอปมีขนาดเล็กลงมาก รุ่นช่วยให้คุณใช้งานง่ายขึ้น และช่วยให้ใช้โมดูลฟีเจอร์ รวมถึงมอบประสบการณ์การใช้งานแบบทันใจได้
- เพิ่มความปลอดภัยของคีย์ Signing ของคุณและทำให้สามารถใช้ คีย์การอัปโหลดแยกต่างหากเพื่อรับรอง App Bundle ที่คุณอัปโหลดไปยัง Google Play
การอัปเกรดคีย์ช่วยให้คุณเปลี่ยนคีย์ App Signing ได้ ในกรณีที่บัญชีที่มีอยู่ถูกบุกรุก หรือหากต้องการย้ายข้อมูลไปยัง คีย์ที่มีการเข้ารหัสที่รัดกุมกว่า
Play App Signing ใช้คีย์ 2 คีย์ ได้แก่ คีย์ App Signing และคีย์ upload คีย์ ซึ่งจะอธิบายรายละเอียดเพิ่มเติมในส่วนที่เกี่ยวกับคีย์และ คีย์สโตร์ คุณเก็บคีย์การอัปโหลดไว้แล้วใช้คีย์นี้เพื่อรับรอง แอปเพื่ออัปโหลดไปยัง Google Play Store Google ใช้ใบรับรองการอัปโหลด เพื่อยืนยันตัวตนและรับรอง APK ด้วยคีย์ App Signing สำหรับ การกระจายตามที่แสดงในรูปที่ 1 เมื่อใช้คีย์การอัปโหลดแยกต่างหาก คุณจะทำสิ่งต่อไปนี้ได้ ขอรีเซ็ตคีย์การอัปโหลด หากคีย์สูญหายหรือถูกขโมย
เมื่อเทียบกันแล้ว สำหรับแอปที่ยังไม่ได้เลือกใช้ Play App Signing หากคุณทำคีย์ Signing ของแอปหาย คุณจะอัปเดตแอปไม่ได้
รูปที่ 1 การลงนามแอปด้วย Play App Signing
ระบบจะจัดเก็บคีย์ของคุณไว้ในโครงสร้างพื้นฐานเดียวกันกับที่ Google ใช้เก็บคีย์ ของตัวเอง ซึ่งได้รับการปกป้องโดยบริการการจัดการคีย์ของ Google คุณสามารถ เรียนรู้เพิ่มเติมเกี่ยวกับโครงสร้างพื้นฐานทางเทคนิคของ Google โดยอ่าน สมุดปกขาวเกี่ยวกับความปลอดภัยของ Google Cloud
เมื่อใช้ Play App Signing ในกรณีที่คีย์การอัปโหลดสูญหาย หรือคีย์การอัปโหลดหายไป ถูกบุกรุก คุณจะขอรีเซ็ตคีย์การอัปโหลดได้ใน Play Console เนื่องจากคีย์ App Signing ของคุณได้รับการรักษาความปลอดภัยโดย Google คุณจึงทำสิ่งต่อไปนี้ได้ อัปโหลดแอปเวอร์ชันใหม่เป็นการอัปเดตแอปเวอร์ชันเดิมต่อไป แม้ว่า หากเปลี่ยนคีย์การอัปโหลด อ่านข้อมูลเพิ่มเติมได้ที่หัวข้อรีเซ็ตข้อมูลสูญหายหรือถูกบุกรุก คีย์การอัปโหลดส่วนตัว
ส่วนถัดไปจะอธิบายคำศัพท์และแนวคิดที่สำคัญบางส่วนที่เกี่ยวข้องกับแอป และการรักษาความปลอดภัย หากต้องการข้ามขั้นตอนและเรียนรู้วิธีเตรียม แอปสำหรับอัปโหลดไปยัง Google Play Store ให้ไปที่รับรองแอป รุ่น
คีย์สโตร์ คีย์ และใบรับรอง
Java Keystore (.jks หรือ .keystore) เป็นไฟล์ไบนารีที่ทำหน้าที่เป็นที่เก็บ ใบรับรองและคีย์ส่วนตัว
ใบรับรองคีย์สาธารณะ (.der
หรือ .pem
) หรือที่เรียกว่าดิจิทัล
หรือใบรับรองข้อมูลประจำตัว จะมีคีย์สาธารณะของ
คู่คีย์สาธารณะ/ส่วนตัว และข้อมูลเมตาอื่นๆ ที่ระบุเจ้าของ
(เช่น ชื่อและสถานที่ตั้ง) ที่เก็บคีย์ส่วนตัวที่เกี่ยวข้อง
คีย์ประเภทต่างๆ ที่คุณควรทำความเข้าใจมีดังนี้
- คีย์ App Signing: คีย์ที่ใช้ในการรับรอง APK ที่ติดตั้งใน อุปกรณ์ของผู้ใช้ เนื่องจากโมเดลการอัปเดตที่ปลอดภัยของ Android จะไม่มีการใช้คีย์ Signing เปลี่ยนแปลงไปตลอดอายุของแอป คีย์ App Signing เป็นแบบส่วนตัวและต้อง จะเก็บไว้เป็นความลับ แต่คุณสามารถแชร์ใบรับรองที่สร้างขึ้นได้ โดยใช้คีย์ App Signing ของคุณ
คีย์การอัปโหลด: คีย์ที่คุณใช้รับรอง App Bundle หรือ APK ก่อนที่จะ อัปโหลดไฟล์สำหรับการลงนามแอปด้วย Google Play คุณต้อง เก็บคีย์การอัปโหลดไว้เป็นความลับ แต่คุณสามารถแชร์ใบรับรองที่ สร้างขึ้นโดยใช้คีย์การอัปโหลด คุณอาจสร้างคีย์การอัปโหลดใน วิธีต่อไปนี้
- หากเลือกให้ Google สร้างคีย์ App Signing ให้คุณเมื่อ เลือกใช้แล้ว คีย์ที่คุณใช้รับรองแอปสำหรับรุ่นคือ กำหนดให้เป็นคีย์การอัปโหลด
- หากคุณให้คีย์ App Signing แก่ Google เมื่อเลือกใช้คีย์ใหม่ แอปที่มีอยู่ คุณจะมีตัวเลือกในการสร้างคีย์การอัปโหลดใหม่ในระหว่างหรือ หลังจากเลือกใช้เพื่อเพิ่มความปลอดภัย
- หากไม่สร้างคีย์การอัปโหลดใหม่ คุณจะยังใช้แอปต่อไปได้ Signing Key เป็นคีย์การอัปโหลดเพื่อรับรองแอปแต่ละรุ่น
เคล็ดลับ: หากต้องการรักษาคีย์ให้ปลอดภัย คุณควรดูแลให้แอป คีย์ Signing และคีย์การอัปโหลดแตกต่างกัน
การทำงานร่วมกับผู้ให้บริการ API
คุณสามารถดาวน์โหลดใบรับรองสำหรับคีย์ App Signing และการอัปโหลด จากรุ่น > ตั้งค่า > App Signing ใน Play Console ซึ่งใช้ลงทะเบียนคีย์สาธารณะกับ ผู้ให้บริการ API เนื้อหานี้มีไว้เพื่อแชร์ เนื่องจากไม่มีข้อมูลส่วนตัว
ลายนิ้วมือของใบรับรองคือสิ่งที่ใช้แสดงขนาดสั้นและไม่ซ้ำกัน
ใบรับรองที่ผู้ให้บริการ API มักจะขอพร้อมกับชื่อแพ็กเกจ
เพื่อลงทะเบียนแอปเพื่อใช้บริการ ลายนิ้วมือ MD5, SHA-1 และ SHA-256
ของใบรับรองการอัปโหลดและ App Signing จะอยู่ในหน้า App Signing
ของ Play Console ส่วนลายนิ้วมืออื่นๆ ก็คำนวณได้ด้วยการดาวน์โหลด
ใบรับรองต้นฉบับ (.der
) จากหน้าเดียวกัน
ลงนามในบิลด์การแก้ไขข้อบกพร่อง
เมื่อเรียกใช้หรือแก้ไขข้อบกพร่องของโปรเจ็กต์จาก IDE ให้ Android Studio
รับรองแอปของคุณโดยอัตโนมัติด้วยใบรับรองการแก้ไขข้อบกพร่องที่สร้างโดย Android
เครื่องมือ SDK ครั้งแรกที่คุณเรียกใช้หรือแก้ไขข้อบกพร่องของโปรเจ็กต์ใน Android Studio ระบบจะ
IDE จะสร้างคีย์สโตร์และใบรับรองการแก้ไขข้อบกพร่องโดยอัตโนมัติใน
$HOME/.android/debug.keystore
แล้วตั้งค่าคีย์สโตร์และรหัสผ่านคีย์
เนื่องจากใบรับรองการแก้ไขข้อบกพร่องสร้างขึ้นโดยเครื่องมือสร้าง และไม่ปลอดภัยโดย การออกแบบ, App Store ส่วนใหญ่ (รวมถึง Google Play Store) ไม่ยอมรับแอป ลงชื่อด้วยใบรับรองการแก้ไขข้อบกพร่องสำหรับการเผยแพร่
Android Studio จะเก็บข้อมูลการลงชื่อแก้ไขข้อบกพร่องไว้ในการลงชื่อโดยอัตโนมัติ ของคุณ เพื่อที่คุณจะได้ไม่ต้องป้อนข้อมูลนี้ทุกครั้งที่คุณแก้ไขข้อบกพร่อง การลงนาม การกำหนดค่าเป็นออบเจ็กต์ที่ประกอบด้วยข้อมูลที่จำเป็นทั้งหมดในการ รับรองแอปของคุณ รวมถึงตำแหน่งคีย์สโตร์ รหัสผ่านคีย์สโตร์ ชื่อคีย์ และ รหัสผ่านคีย์
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการสร้างและเรียกใช้แอปเพื่อแก้ไขข้อบกพร่อง โปรดดูสร้าง และเรียกใช้แอป
วันหมดอายุของใบรับรองการแก้ไขข้อบกพร่อง
ใบรับรองที่ลงนามด้วยตนเองซึ่งใช้ในการรับรองแอปสำหรับการแก้ไขข้อบกพร่องมี วันที่หมดอายุ 30 ปีนับจากวันที่สร้าง กรณีที่ใบรับรอง หมดอายุ คุณจะได้รับข้อผิดพลาดของรุ่น
หากต้องการแก้ไขปัญหานี้ เพียงลบไฟล์ debug.keystore
ที่จัดเก็บไว้ในหนึ่งใน
สถานที่ต่อไปนี้
~/.android/
ใน OS X และ LinuxC:\Documents and Settings\user\.android\
เปิดอยู่ Windows XPC:\Users\user\.android\
ใน Windows Vista และ Windows 7, 8 และ 10
ครั้งต่อไปที่คุณสร้างและเรียกใช้แอปเวอร์ชันที่แก้ไขข้อบกพร่อง ให้ Android Studio สร้างคีย์สโตร์ใหม่และคีย์การแก้ไขข้อบกพร่อง
รับรองแอปเพื่อเผยแพร่ไปยัง Google Play
เมื่อพร้อมเผยแพร่แอปแล้ว คุณจะต้องลงนามแอปและอัปโหลด ไปยัง App Store เช่น Google Play เมื่อเผยแพร่แอปไปยัง Google Play เป็นครั้งแรกคุณต้องกำหนดค่า Play App Signing ด้วย Play App Signing ไม่บังคับสำหรับแอปที่สร้างก่อนเดือนสิงหาคม 2021 ส่วนนี้จะแสดงวิธีการ ลงนามแอปอย่างเหมาะสมสำหรับรุ่นและกำหนดค่า Play App Signing
สร้างคีย์การอัปโหลดและคีย์สโตร์
หากคุณยังไม่มีคีย์การอัปโหลด ซึ่งจะเป็นประโยชน์เมื่อกำหนดค่า Play App Signing ให้คุณสร้าง App Signing ได้โดยใช้ Android Studio โดยทำดังนี้
- ในแถบเมนู ให้คลิกสร้าง > สร้าง Bundle/APK ที่ลงนาม
- ในกล่องโต้ตอบสร้าง Bundle หรือ APK ที่ลงชื่อ ให้เลือก Android App Bundle หรือ APK แล้วคลิกถัดไป
- คลิกสร้างใหม่ใต้ช่องเส้นทางคีย์สโตร์
ในหน้าต่าง New Key Store ให้ระบุข้อมูลต่อไปนี้สำหรับ คีย์สโตร์และคีย์ดังที่แสดงในรูปที่ 2
รูปที่ 2 สร้างคีย์การอัปโหลดและคีย์สโตร์ใหม่ใน Android Studio
คีย์สโตร์
- เส้นทางแหล่งเก็บคีย์: เลือกตำแหน่งที่ควรสร้างคีย์สโตร์
และควรเพิ่มชื่อไฟล์ต่อท้ายเส้นทางตำแหน่งด้วย
ส่วนขยาย
.jks
- รหัสผ่าน: สร้างและยืนยันรหัสผ่านที่ปลอดภัยสำหรับคีย์สโตร์
- เส้นทางแหล่งเก็บคีย์: เลือกตำแหน่งที่ควรสร้างคีย์สโตร์
และควรเพิ่มชื่อไฟล์ต่อท้ายเส้นทางตำแหน่งด้วย
ส่วนขยาย
คีย์
- ชื่อแทน: ป้อนชื่อที่ระบุสำหรับคีย์
- รหัสผ่าน: สร้างและยืนยันรหัสผ่านที่ปลอดภัยสำหรับคีย์ ช่วงเวลานี้ ควรเหมือนกับรหัสผ่านคีย์สโตร์ของคุณ (โปรดดูปัญหาที่ทราบแล้ว สำหรับข้อมูลเพิ่มเติม)
- ระยะเวลาที่ใช้ได้ (ปี): กำหนดระยะเวลาเป็นปีที่จะให้คีย์ ใช้งานได้ คีย์ของคุณควรมีอายุอย่างน้อย 25 ปี คุณจึงลงชื่อเข้าใช้ได้ การอัปเดตแอปด้วยคีย์เดียวกันตลอดอายุของแอป
- ใบรับรอง: ป้อนข้อมูลบางอย่างเกี่ยวกับตัวคุณสำหรับ ใบรับรอง ข้อมูลนี้จะไม่แสดงในแอปของคุณ แต่รวมอยู่ ในใบรับรองของคุณ โดยเป็นส่วนหนึ่งของ APK
เมื่อกรอกแบบฟอร์มเสร็จแล้ว ให้คลิกตกลง
หากต้องการสร้างและลงนามแอปด้วยคีย์การอัปโหลด ให้ดำเนินการต่อ ไปยังส่วนเกี่ยวกับวิธี รับรองแอปด้วยคีย์การอัปโหลด หากคุณเพียงแค่ต้องการ สร้างคีย์และคีย์สโตร์ คลิกยกเลิก
ลงนามแอปด้วยคีย์
หากมีคีย์การอัปโหลดอยู่แล้ว ให้ใช้คีย์ดังกล่าวรับรองแอป หากแอปของคุณ ลงนามและเผยแพร่ใน Google Play Store ด้วยแอปที่มีอยู่แล้ว คีย์ Signing ใช้สำหรับรับรองแอปของคุณ คุณสามารถสร้างและลงทะเบียน คีย์การอัปโหลดแยกต่างหากกับ Google Play เพื่อรับรองและอัปโหลด อัปเดตแอปของคุณในครั้งต่อๆ ไป
หากต้องการลงนามแอปโดยใช้ Android Studio ให้ทำตามขั้นตอนต่อไปนี้
- หากคุณไม่มีกล่องโต้ตอบสร้าง Bundle หรือ APK ที่ลงนามอยู่ในขณะนี้ ให้เปิด คลิกสร้าง > สร้าง Bundle/APK ที่ลงนาม
- ในกล่องโต้ตอบสร้าง Bundle หรือ APK ที่ลงชื่อ ให้เลือกแอป Android แพ็กเกจหรือ APK แล้วคลิกถัดไป
- เลือกโมดูลจากเมนูแบบเลื่อนลง
ระบุเส้นทางไปยังคีย์สโตร์ ชื่อแทนสำหรับคีย์ แล้วป้อน สำหรับทั้ง 2 บัญชี หากคุณยังไม่ได้เตรียมคีย์สโตร์การอัปโหลด กับคีย์ ให้สร้างคีย์การอัปโหลดและคีย์สโตร์ก่อน กลับมาเพื่อทำขั้นตอนนี้ให้เสร็จสมบูรณ์
รูปที่ 3 รับรองแอปด้วยคีย์การอัปโหลด
คลิกถัดไป
ในหน้าต่างถัดไป (แสดงในรูปที่ 4) ให้เลือกโฟลเดอร์ปลายทางสำหรับ แอปที่รับรองแล้ว เลือกประเภทบิลด์ เลือกรสชาติของผลิตภัณฑ์(หากมี)
หากคุณกำลังสร้างและลงนาม APK คุณต้องเลือกลายเซ็น เวอร์ชันที่คุณต้องการให้แอปรองรับ หากต้องการเรียนรู้เพิ่มเติม โปรดอ่านเกี่ยวกับ แผนการ App Signing
คลิกสร้าง
![](https://developer.android.google.cn/static/studio/images/publish/generate_signed_bundle_popup-2x.png?authuser=0000&hl=th)
รูปที่ 5 คลิกลิงก์ในป๊อปอัปเพื่อวิเคราะห์หรือค้นหาแอปของคุณ
หลังจาก Android Studio สร้างแอปที่ลงนามเสร็จแล้ว คุณสามารถทำอย่างใดอย่างหนึ่งต่อไปนี้ ค้นหาหรือวิเคราะห์แอปโดยคลิกตัวเลือกที่เหมาะสมใน การแจ้งเตือนแบบป๊อปอัปดังที่แสดงในรูปที่ 5
ตอนนี้คุณพร้อมเลือกใช้ Play App Signing และอัปโหลดแอปแล้ว แอปสำหรับการเปิดตัวแอป หากคุณยังไม่คุ้นเคยกับกระบวนการเผยแพร่แอป คุณอาจต้องการ เพื่ออ่านภาพรวมการเปิดตัว หรือไม่เช่นนั้น ให้ไปยังหน้าเกี่ยวกับวิธีอัปโหลดแอปไปยัง Play Google Play
การใช้ Play App Signing
ดังที่อธิบายก่อนหน้านี้ในหน้านี้ การกำหนดค่า ต้องใช้ Play App Signing เพื่อ รับรองแอปของคุณเพื่อการเผยแพร่ผ่าน Google Play (ยกเว้นสำหรับแอป ที่สร้างขึ้นก่อนเดือนสิงหาคม 2021 ซึ่งอาจเผยแพร่ APK ที่ลงนามด้วยตนเองต่อไป) ขั้นตอนที่ต้องทำจะขึ้นอยู่กับว่าแอปยังไม่ได้รับการ เผยแพร่ไปยัง Google Play แล้ว หรือแอปของคุณมีการรับรองและเผยแพร่ก่อนหน้านี้แล้ว สิงหาคม 2021 โดยใช้คีย์ App Signing ที่มีอยู่
กำหนดค่าแอปใหม่
หากต้องการกำหนดค่าการลงนามสำหรับแอปที่ยังไม่ได้เผยแพร่ไปยัง Google Play ให้ทำดังนี้ โดยทำตามขั้นตอนต่อไปนี้
- สร้างคีย์การอัปโหลดหากยังไม่ได้ทำ และ รับรองแอปด้วยคีย์การอัปโหลดนั้น
- ลงชื่อเข้าใช้ Play Console
- ปฏิบัติตามขั้นตอนเพื่อเตรียมความพร้อมและ เปิดตัวรุ่น เพื่อสร้างรุ่นใหม่
- หลังจากเลือกแทร็กที่เผยแพร่แล้ว ให้กำหนดค่า App Signing ในส่วนแอป
Signing ดังนี้
- หากต้องการให้ Google Play สร้างคีย์ App Signing สำหรับคุณและใช้คีย์นั้นรับรอง แอปของคุณโดยที่คุณไม่ต้องดำเนินการใดๆ กุญแจที่ใช้ในการลงนามรายการแรก รุ่นจะกลายเป็นคีย์การอัปโหลดของคุณ และคุณควรใช้รุ่นนี้เพื่อลงนามในอนาคต รุ่น
- หากต้องการใช้คีย์เดียวกันกับอีกแอปหนึ่งในบัญชีนักพัฒนาแอป ให้เลือก เปลี่ยนคีย์ App Signing > ใช้คีย์เดียวกับแอปอื่นใน บัญชี ให้เลือกแอป แล้วคลิกต่อไป
- หากต้องการระบุคีย์ Signing ของคุณเองเพื่อให้ Google ใช้ในการรับรองแอป เลือกเปลี่ยนคีย์ App Signing แล้วเลือกส่งออกและ อัปโหลด ตัวเลือกที่ช่วยให้คุณอัปโหลดคีย์ส่วนตัวและคีย์สาธารณะได้อย่างปลอดภัย ใบรับรอง
ในส่วน App Bundle ให้คลิกเรียกดู เพื่อค้นหาและอัปโหลดแอปที่ลงนามโดยใช้คีย์การอัปโหลด สำหรับข้อมูลเพิ่มเติม ข้อมูลเกี่ยวกับการเปิดตัวแอปได้ที่ เตรียมพร้อมและ เปิดตัวรุ่น เมื่อเปิดตัวแอปหลังจากกำหนดค่า Play App Signing Google Play จะสร้าง (เว้นแต่คุณจะอัปโหลดคีย์ที่มีอยู่) และจัดการ คีย์การรับรองสำหรับคุณ เพียงรับรองการอัปเดตในครั้งต่อๆ ไปของแอปโดยใช้ คีย์การอัปโหลด ก่อนที่จะอัปโหลดไปยัง Google Play
หากต้องการสร้างคีย์การอัปโหลดใหม่สำหรับแอป ให้ไปที่ส่วนเกี่ยวกับวิธี เพื่อรีเซ็ตคีย์การอัปโหลดส่วนตัวที่สูญหายหรือถูกบุกรุก
เลือกใช้แอปที่มีอยู่
หากคุณอัปเดตแอปที่เผยแพร่ไปยัง Google Play แล้วโดยใช้ App Signing ที่มีอยู่ คุณจะเลือกใช้ Play App Signing ได้ผ่านทาง ดังต่อไปนี้:
- ลงชื่อเข้าใช้ Play Console และ ไปที่แอปของคุณ
- ที่เมนูด้านซ้าย ให้คลิกรุ่น > ตั้งค่า > App Signing
- (หากมี) อ่านข้อกำหนดในการให้บริการและเลือกยอมรับ
- เลือกตัวเลือกใดตัวเลือกหนึ่งที่อธิบายคีย์ Signing ที่คุณต้องการได้ดีที่สุด อัปโหลดไปยัง Google Play และทำตามคำแนะนำที่ปรากฏ สำหรับ ตัวอย่างเช่น หากคุณใช้ Java Keystore สำหรับคีย์การลงนาม ให้เลือก อัปโหลดคีย์ App Signing ใหม่จาก Java Keystore แล้วทำตาม วิธีการดาวน์โหลดและเรียกใช้เครื่องมือ PEPK และอัปโหลดไฟล์ที่สร้างขึ้น ด้วยคีย์ที่เข้ารหัส
- คลิกลงทะเบียน
ตอนนี้คุณควรเห็นหน้าที่มีรายละเอียดการรับรองและการอัปโหลดแอป ใบรับรอง ตอนนี้ Google Play จะรับรองแอปด้วยคีย์ที่มีอยู่เมื่อ เพื่อให้ผู้ใช้ใช้งานได้ อย่างไรก็ตาม ประโยชน์ที่สำคัญที่สุดอย่างหนึ่งของแอป Play การลงนามคือความสามารถในการแยกคีย์ที่ใช้ในการลงนาม อาร์ติแฟกต์ที่คุณอัปโหลดไปยัง Google Play จากคีย์ที่ Google Play ใช้เพื่อรับรอง เพื่อเผยแพร่แอปให้แก่ผู้ใช้ ดังนั้น โปรดพิจารณาทำตามขั้นตอนในหัวข้อ เพื่อสร้างและลงทะเบียนคีย์การอัปโหลดแยกต่างหาก
สร้างและลงทะเบียนใบรับรองการอัปโหลด
เมื่อคุณเผยแพร่แอปที่ไม่ได้รับรองโดยคีย์การอัปโหลด ระบบ Play Console มีตัวเลือกในการลงทะเบียนเพื่ออัปเดตแอปในอนาคต แม้ว่านี่จะเป็นขั้นตอนที่ไม่บังคับ เราขอแนะนำให้คุณเผยแพร่แอป ด้วยคีย์ที่แยกต่างหากจากกับที่ Google Play ใช้เพื่อเผยแพร่แอป ให้แก่ผู้ใช้ วิธีนี้ช่วยให้ Google เก็บรักษาคีย์ Signing ของคุณไว้อย่างปลอดภัยและคุณจะได้รับสิ่งต่อไปนี้ ตัวเลือกในการรีเซ็ตคีย์การอัปโหลดส่วนตัวที่สูญหายหรือมีความเสี่ยง ส่วนนี้จะอธิบายวิธีสร้างคีย์การอัปโหลด และการสร้างการอัปโหลด ใบรับรองจาก Google Play และลงทะเบียนใบรับรองนั้นกับ Google Play สำหรับอนาคต การอัปเดตแอปของคุณ
ต่อไปนี้เป็นสถานการณ์ที่คุณเห็นตัวเลือกในการลงทะเบียน ใบรับรองการอัปโหลดใน Play Console
- เมื่อคุณเผยแพร่แอปใหม่ที่รับรองด้วยคีย์ Signing และเลือกใช้ Play App Signing
- เมื่อคุณกำลังจะเผยแพร่แอปที่มีอยู่ซึ่งเลือกใช้ Play แล้ว App Signing แต่ลงนามโดยใช้คีย์ Signing
หากคุณไม่ได้เผยแพร่อัปเดตไปยังแอปที่มีอยู่ซึ่งเลือกใช้อยู่แล้ว Play App Signing และคุณต้องการลงทะเบียนใบรับรองการอัปโหลด โปรดทำตามขั้นตอนด้านล่างและไปยังหัวข้อเกี่ยวกับวิธี รีเซ็ตคีย์การอัปโหลดส่วนตัวที่สูญหายหรือถูกบุกรุก
หากคุณยังไม่ได้อ่าน สร้างคีย์การอัปโหลดและคีย์สโตร์
หลังจากสร้างคีย์การอัปโหลดและคีย์สโตร์แล้ว คุณจะต้องสร้างคีย์สาธารณะ
ใบรับรองจากคีย์การอัปโหลดของคุณโดยใช้
keytool
ด้วยคำสั่งต่อไปนี้
$ keytool -export -rfc -keystore your-upload-keystore.jks -alias upload-alias -file output_upload_certificate.pem
ตอนนี้คุณมีใบรับรองการอัปโหลดแล้ว ให้ลงทะเบียนใบรับรองกับ Google เมื่อได้รับข้อความแจ้ง ใน Play Console หรือเมื่อรีเซ็ตคีย์การอัปโหลด
อัปเกรดคีย์ App Signing
ในบางกรณี คุณอาจต้องเปลี่ยนคีย์ Signing ของแอป สำหรับ เช่น คุณต้องการคีย์ที่มีการเข้ารหัสที่รัดกุมกว่าหรือคีย์ Signing ถูกบุกรุก อย่างไรก็ตาม เนื่องจากผู้ใช้จะอัปเดตแอปได้เฉพาะในกรณีที่ มีการลงนามการอัปเดตด้วยคีย์การลงนามเดียวกัน ซึ่งทำให้เปลี่ยนการรับรองได้ยาก สำหรับแอปที่เผยแพร่แล้ว
หากคุณเผยแพร่แอปใน Google Play คุณสามารถอัปเกรดคีย์ Signing ของ ที่เผยแพร่ผ่าน Play Console - ระบบจะใช้คีย์ใหม่เพื่อรับรองการติดตั้ง และการอัปเดตแอปใน Android 13 ขึ้นไป ในขณะที่คีย์ App Signing เก่าของคุณ ซึ่งใช้ในการรับรองอัปเดตสำหรับผู้ใช้ Android เวอร์ชันก่อนหน้า
หากต้องการดูข้อมูลเพิ่มเติม โปรดอ่าน อัปเกรดคีย์ App Signing
รีเซ็ตคีย์การอัปโหลดส่วนตัวที่สูญหายหรือถูกบุกรุก
ในกรณีที่คีย์การอัปโหลดส่วนตัวสูญหายหรือคีย์ส่วนตัวถูกแฮ็ก คุณจะสร้างบัญชีใหม่และ ขอรีเซ็ตคีย์การอัปโหลด ใน Play Console
กำหนดค่ากระบวนการบิลด์เพื่อรับรองแอปโดยอัตโนมัติ
ใน Android Studio คุณกำหนดค่าโปรเจ็กต์เพื่อรับรองเวอร์ชันที่เผยแพร่ได้ ของแอปโดยอัตโนมัติระหว่างขั้นตอนการสร้างโดยสร้างการรับรอง และกำหนดค่าให้กับประเภทบิลด์ของรุ่น การลงนาม ประกอบด้วยตำแหน่งคีย์สโตร์ รหัสผ่านคีย์สโตร์ ชื่อแทนคีย์ และ รหัสผ่านคีย์ หากต้องการสร้างการกำหนดค่าการรับรองและมอบหมายให้กับรุ่นของคุณ ประเภทบิลด์โดยใช้ Android Studio ให้ทำตามขั้นตอนต่อไปนี้
- ในหน้าต่างโปรเจ็กต์ ให้คลิกขวาที่แอปแล้วคลิก เปิดการตั้งค่าโมดูล
- ในหน้าต่างโครงสร้างโครงการในส่วน โมดูลในแผงด้านซ้าย คลิกโมดูลที่คุณต้องการ ลงนาม
- คลิกแท็บการลงชื่อเข้าใช้ จากนั้นคลิกเพิ่ม
-
เลือกไฟล์คีย์สโตร์ ป้อนชื่อสำหรับการกำหนดค่าการลงชื่อนี้ (เพราะคุณอาจสร้างได้มากกว่า 1 รายการ) แล้วป้อนข้อมูลที่จำเป็น
รูปที่ 7 หน้าต่างสำหรับสร้างการลงชื่อใหม่ การกำหนดค่า
- คลิกแท็บประเภทบิลด์
- คลิกบิลด์รุ่น
-
เลือกการกำหนดค่าการลงชื่อในส่วนการกำหนดค่าการลงชื่อเข้าใช้ ที่คุณเพิ่งสร้างขึ้น
รูปที่ 8 เลือกการกำหนดค่า Signing ใน Android Studio
- คลิกตกลง
ทุกครั้งที่คุณสร้างประเภทบิลด์ของรุ่นโดยเลือกตัวเลือกใต้
สร้าง > สร้าง Bundle/APK ใน Android Studio,
IDE จะรับรองแอปของคุณโดยอัตโนมัติ โดยใช้การกำหนดค่าการรับรองที่คุณ
ที่ระบุ คุณดู APK หรือ App Bundle ที่รับรองแล้วได้ใน
ไดเรกทอรี build/outputs/
ภายในไดเรกทอรีโปรเจ็กต์สำหรับ
ที่คุณกำลังสร้างอยู่
เมื่อสร้างการกำหนดค่าการรับรอง ระบบจะรวมข้อมูลการลงชื่อด้วย เป็นข้อความธรรมดาในไฟล์บิลด์ Gradle หากคุณทำงานเป็นทีมหรือ เราจะแชร์รหัสของคุณแบบสาธารณะ คุณควรรักษาข้อมูลการลงนามให้ปลอดภัย โดยการนำออกจากไฟล์บิลด์และจัดเก็บไว้แยกต่างหาก คุณสามารถอ่าน ข้อมูลเพิ่มเติมเกี่ยวกับวิธีนำข้อมูลการรับรองออกจากไฟล์บิลด์ใน นำข้อมูลการลงนามออกจากบิลด์ของคุณ Files ดูข้อมูลเพิ่มเติมเกี่ยวกับการรักษาข้อมูลการรับรองให้ปลอดภัยได้ที่ เก็บคีย์ให้ปลอดภัยที่ด้านล่าง
เซ็นชื่อกำกับผลิตภัณฑ์แต่ละรสชาติแตกต่างกัน
หากแอปใช้รสชาติของผลิตภัณฑ์และคุณต้องการรับรองแต่ละเวอร์ชัน ต่างกัน คุณสามารถสร้างการกำหนดค่าการรับรองเพิ่มเติมและกำหนด ตามรสชาติ:
- ในหน้าต่างโปรเจ็กต์ ให้คลิกขวาที่แอปแล้วคลิก เปิดการตั้งค่าโมดูล
- ในหน้าต่างโครงสร้างโครงการในส่วน โมดูลในแผงด้านซ้าย คลิกโมดูลที่คุณต้องการ ลงนาม
- คลิกแท็บการลงชื่อเข้าใช้ จากนั้นคลิกเพิ่ม
-
เลือกไฟล์คีย์สโตร์ ป้อนชื่อสำหรับการกำหนดค่าการลงชื่อนี้ (เพราะคุณอาจสร้างได้มากกว่า 1 รายการ) แล้วป้อนข้อมูลที่จำเป็น
รูปที่ 10 หน้าต่างสำหรับสร้างการลงชื่อใหม่ การกำหนดค่า
- ทำขั้นตอนที่ 3 และ 4 ซ้ำตามที่จำเป็นจนกว่าคุณจะสร้างการลงชื่อทั้งหมด การกำหนดค่าเอง
- คลิกแท็บรสชาติ
- คลิกเวอร์ชันที่ต้องการกำหนดค่า แล้วเลือกเวอร์ชันที่เหมาะสม
การกำหนดค่าการลงชื่อจากเมนูแบบเลื่อนลงการกำหนดค่าการลงชื่อเข้าใช้
รูปที่ 11 กำหนดค่าการตั้งค่าการรับรองตามรสชาติของผลิตภัณฑ์
ทำซ้ำเพื่อกำหนดค่ารสชาติเพิ่มเติมของผลิตภัณฑ์
- คลิกตกลง
นอกจากนี้ คุณยังระบุการตั้งค่าการลงชื่อในไฟล์การกำหนดค่า Gradle ได้อีกด้วย สำหรับ โปรดดูข้อมูลเพิ่มเติมที่การกำหนดค่าการตั้งค่าการลงชื่อเข้าใช้
เรียกใช้รายงานการลงนาม
หากต้องการข้อมูลการรับรองสำหรับเวอร์ชันต่างๆ ของแอป ให้เรียกใช้ Gradle
signingReport
งานใน Android Studio:
- เลือก มุมมอง > หน้าต่างเครื่องมือ > Gradle เพื่อเปิดหน้าต่างเครื่องมือ Gradle
- เลือก YourApp > งาน > แอนดรอยด์ > SigningReport เพื่อเรียกใช้รายงาน
จัดการคีย์ Signing ของคุณเอง
หากคุณเลือกไม่ใช้ Play App Signing (เฉพาะแอปที่สร้างขึ้นเท่านั้น ก่อนเดือนสิงหาคม 2021) คุณจะจัดการคีย์ App Signing และคีย์สโตร์ของตนเองได้ โปรดทราบว่าคุณมีหน้าที่รักษาความปลอดภัยของคีย์และคีย์สโตร์ นอกจากนี้ แอปของคุณจะรองรับ Android App Bundle ไม่ได้ การนำส่งฟีเจอร์ Play และการนำส่งเนื้อหา Play
เมื่อพร้อมที่จะสร้างคีย์และคีย์สโตร์ของคุณเอง อย่าลืมตรวจสอบว่าคุณ เลือกรหัสผ่านที่รัดกุมสำหรับคีย์สโตร์ของคุณและรหัสผ่านที่รัดกุมแยกต่างหากสำหรับ คีย์ส่วนตัวแต่ละคีย์ที่เก็บไว้ในคีย์สโตร์ คุณต้องเก็บคีย์สโตร์ของคุณไว้ในที่ปลอดภัย และปลอดภัย หากคุณเสียสิทธิ์เข้าถึงคีย์ App Signing หรือคีย์ของคุณคือ ถูกบุกรุก Google ไม่สามารถเรียกคีย์ App Signing ให้คุณได้ และคุณจะ เผยแพร่แอปเวอร์ชันใหม่ให้ผู้ใช้โดยผ่านการอัปเดต แอปดั้งเดิม สำหรับข้อมูลเพิ่มเติม โปรดดู เก็บคีย์ให้ปลอดภัยที่ด้านล่าง
หากคุณจัดการคีย์ App Signing และคีย์สโตร์ของคุณเอง เมื่อคุณรับรอง APK จะรับรองในเครื่องโดยใช้คีย์ App Signing ของคุณและอัปโหลด APK ที่รับรองแล้ว ไปยัง Google Play Store โดยตรงเพื่อจัดจำหน่าย ดังที่แสดงในรูปที่ 12
รูปที่ 12 การลงนามแอปเมื่อคุณจัดการคีย์ App Signing ของคุณเอง
เมื่อคุณใช้ Play App Signing Google จะดูแลคีย์การรับรองให้ปลอดภัย และดูแลให้แอป ลงนามอย่างถูกต้องและรับการอัปเดตได้ตลอดอายุการใช้งาน อย่างไรก็ตาม หากคุณตัดสินใจที่จะจัดการคีย์ App Signing ด้วยตนเอง มี ที่คุณควรคำนึงถึง
ข้อควรพิจารณาในการรับรอง
คุณควรรับรองแอปด้วยใบรับรองเดียวกันตลอดทั้งแอป มีเหตุผลหลายประการที่คุณควรทำ ได้แก่
- การอัปเกรดแอป: เมื่อระบบติดตั้งการอัปเดตแอป เปรียบเทียบใบรับรองในเวอร์ชันใหม่กับใบรับรองใน เวอร์ชัน ระบบจะอนุญาตให้อัปเดตหากใบรับรองตรงกัน ถ้าคุณลงชื่อ เวอร์ชันใหม่ที่มีใบรับรองอื่น คุณต้องมอบหมายแพ็กเกจอื่น ลงในแอป ในกรณีนี้ ผู้ใช้จะติดตั้งเวอร์ชันใหม่เป็น แอปใหม่
- โมดูลต่างๆ ของแอป: Android อนุญาตให้ APK ที่รับรองโดยใบรับรองเดียวกันทำงาน กระบวนการเดียวกัน หากแอปร้องขอ เพื่อให้ระบบถือว่าแอปดังกล่าว แอปเดียว วิธีนี้ช่วยให้คุณทำให้แอปใช้งานได้ในโมดูล และผู้ใช้สามารถอัปเดตได้ แต่ละโมดูลได้โดยอิสระ
- การแชร์โค้ด/ข้อมูลผ่านสิทธิ์: Android ให้ตามลายเซ็น การบังคับใช้สิทธิ์ เพื่อให้แอปแสดงฟังก์ชันแก่แอปอื่นได้ ที่ลงนามด้วยใบรับรองที่ระบุ การรับรอง APK หลายรายการด้วยเมธอด ใบรับรองเดียวกันและใช้การตรวจสอบสิทธิ์ตามลายเซ็น แอปของคุณสามารถ แชร์โค้ดและข้อมูลในลักษณะที่ปลอดภัย
หากคุณวางแผนที่จะรองรับการอัปเกรดสำหรับแอป โปรดตรวจสอบว่าคีย์ App Signing ของคุณ ระยะเวลาที่ใช้ได้ซึ่งเกินอายุการใช้งานที่คาดไว้ของแอปนั้น ความถูกต้อง ควรมีอายุ 25 ปีขึ้นไป เมื่อระยะเวลาที่ใช้งานได้ของคีย์ หมดอายุ ผู้ใช้จะไม่สามารถอัปเกรดเป็นเวอร์ชันใหม่ได้อย่างราบรื่น แอปของคุณ
หากคุณวางแผนที่จะเผยแพร่แอปใน Google Play คีย์ที่คุณใช้รับรอง แอปต้องมีระยะเวลาที่ใช้งานได้สิ้นสุดหลังวันที่ 22 ตุลาคม 2033 Google Play บังคับใช้ข้อกำหนดนี้เพื่อให้แน่ใจว่าผู้ใช้สามารถอัปเกรดแอปได้อย่างราบรื่นเมื่อ มีเวอร์ชันใหม่แล้ว
เก็บคีย์ให้ปลอดภัย
หากคุณเลือกที่จะจัดการและรักษาความปลอดภัยให้กับคีย์ App Signing และคีย์สโตร์ด้วยตนเอง (แทนที่จะเลือกรับ Play App Signing) การรักษาความปลอดภัยของแอป คีย์ Signing มีความสำคัญอย่างยิ่ง ความสำคัญทั้งต่อคุณและผู้ใช้ หากคุณอนุญาตให้ผู้อื่นใช้คีย์ของคุณ หรือหากคุณเก็บคีย์สโตร์และรหัสผ่านไว้ในตำแหน่งที่ไม่ปลอดภัย บุคคลที่สามสามารถค้นหาและใช้ข้อมูลดังกล่าว ข้อมูลประจำตัวผู้สร้างของคุณ และความไว้วางใจของ ผู้ใช้ถูกบุกรุก
ในกรณีที่บุคคลที่สามควรจัดการเพื่อนำคีย์ App Signing ของคุณไปโดยที่คุณไม่ทราบ หรือ สิทธิ์ บุคคลนั้นสามารถลงนามและเผยแพร่แอปที่มาแทนที่โดยมีเจตนาร้าย แอปพลิเคชันของคุณเอง หรือทำให้แอปพลิเคชันเสียหาย บุคคลดังกล่าวยังสามารถลงนามและ เผยแพร่แอปภายใต้ตัวตนของคุณที่โจมตีแอปอื่นๆ หรือตัวระบบเอง สร้างความเสียหายหรือขโมยข้อมูลผู้ใช้
ต้องใช้คีย์ส่วนตัวในการลงนามแอปเวอร์ชันในอนาคตทั้งหมด หากคุณ คีย์หายหรือวางไว้ผิดที่ คุณจะไม่สามารถเผยแพร่การอัปเดตไปยัง แอปที่มีอยู่ คุณสร้างคีย์ที่สร้างไว้ก่อนหน้านี้ไม่ได้
ชื่อเสียงของคุณในฐานะหน่วยงานนักพัฒนาแอปขึ้นอยู่กับการรักษาความปลอดภัยให้ App Signing ของคุณ อย่างถูกต้องตลอดเวลา จนกว่าคีย์จะหมดอายุ ต่อไปนี้เป็นเคล็ดลับสำหรับ การรักษาคีย์ให้ปลอดภัย
- เลือกรหัสผ่านที่รัดกุมสำหรับคีย์สโตร์และคีย์
- อย่าให้หรือยืมคีย์ส่วนตัวของคุณแก่ผู้อื่น และอย่าปล่อยให้ คนทราบคีย์สโตร์และรหัสผ่านคีย์ของคุณ
- เก็บไฟล์คีย์สโตร์ที่มีคีย์ส่วนตัวไว้ในที่ปลอดภัย
โดยทั่วไปแล้ว หากคุณปฏิบัติตามข้อควรระวังเบื้องต้นต่างๆ ในการสร้าง ใช้งาน และ จัดเก็บคีย์ของคุณเอาไว้ คีย์ก็จะยังคงปลอดภัย
นำข้อมูลการรับรองออกจากไฟล์บิลด์
เมื่อคุณสร้างการกำหนดค่าการรับรอง Android Studio จะเพิ่มการรับรองของคุณ
เป็นข้อความธรรมดาลงในไฟล์ build.gradle
ของโมดูล ถ้า
เมื่อต้องทำงานร่วมกับทีมหรือใช้โค้ดแบบโอเพนซอร์ส คุณควรย้ายโค้ดนี้
ข้อมูลที่ละเอียดอ่อนออกจากไฟล์บิลด์จึงเข้าถึงได้ยาก
ให้ผู้อื่นทราบ โดยควรสร้างไฟล์พร็อพเพอร์ตี้แยกต่างหากเพื่อจัดเก็บ
ข้อมูลที่ปลอดภัยและดูไฟล์นั้นในไฟล์บิลด์ของคุณดังนี้
- สร้างการกำหนดค่าการรับรอง และกำหนดให้กับประเภทบิลด์อย่างน้อย 1 ประเภท วิธีการเหล่านี้จะสมมติว่าคุณได้กำหนดค่าการลงชื่อเพียงครั้งเดียว สำหรับประเภทรุ่นที่เผยแพร่ ตามที่อธิบายไว้ในกำหนดค่า กระบวนการบิลด์เพื่อรับรองแอปโดยอัตโนมัติด้านบน
- สร้างไฟล์ชื่อ
keystore.properties
ในรูท ของโปรเจ็กต์ของคุณ ไฟล์นี้ควรมีข้อมูลการลงนาม ดังนี้storePassword=myStorePassword keyPassword=mykeyPassword keyAlias=myKeyAlias storeFile=myStoreFileLocation
- ในไฟล์
build.gradle
ของโมดูล ให้เพิ่มโค้ดเพื่อโหลดkeystore.properties
ไฟล์ก่อนandroid {}
บล็อกดึงดูด
... // Create a variable called keystorePropertiesFile, and initialize it to your // keystore.properties file, in the rootProject folder. def keystorePropertiesFile = rootProject.file("keystore.properties") // Initialize a new Properties() object called keystoreProperties. def keystoreProperties = new Properties() // Load your keystore.properties file into the keystoreProperties object. keystoreProperties.load(new FileInputStream(keystorePropertiesFile)) android { ... }
Kotlin
... import java.util.Properties import java.io.FileInputStream // Create a variable called keystorePropertiesFile, and initialize it to your // keystore.properties file, in the rootProject folder. val keystorePropertiesFile = rootProject.file("keystore.properties") // Initialize a new Properties() object called keystoreProperties. val keystoreProperties = Properties() // Load your keystore.properties file into the keystoreProperties object. keystoreProperties.load(FileInputStream(keystorePropertiesFile)) android { ... }
หมายเหตุ: คุณสามารถเลือกเก็บ
keystore.properties
ไฟล์ในตำแหน่งอื่น (เช่น ในโฟลเดอร์โมดูล แทนโฟลเดอร์รูทของโปรเจ็กต์ หรือ เซิร์ฟเวอร์บิลด์หากคุณใช้เครื่องมือการผสานรวมอย่างต่อเนื่อง) ใน คุณควรแก้ไขโค้ดด้านบนเพื่อให้เริ่มต้นได้อย่างถูกต้องkeystorePropertiesFile
โดยใช้ ตำแหน่งของไฟล์keystore.properties
- คุณอ้างถึงที่พักที่เก็บไว้ใน
keystoreProperties
ได้ โดยใช้ไวยากรณ์keystoreProperties['propertyName']
แก้ไขบล็อกsigningConfigs
ของโมดูลbuild.gradle
เพื่ออ้างอิงข้อมูลการลงชื่อเข้าใช้ที่เก็บไว้ในkeystoreProperties
โดยใช้ไวยากรณ์นี้ดึงดูด
android { signingConfigs { config { keyAlias keystoreProperties['keyAlias'] keyPassword keystoreProperties['keyPassword'] storeFile file(keystoreProperties['storeFile']) storePassword keystoreProperties['storePassword'] } } ... }
Kotlin
android { signingConfigs { create("config") { keyAlias = keystoreProperties["keyAlias"] as String keyPassword = keystoreProperties["keyPassword"] as String storeFile = file(keystoreProperties["storeFile"] as String) storePassword = keystoreProperties["storePassword"] as String } } ... }
- เปิดหน้าต่างเครื่องมือสร้างตัวแปร และตรวจสอบว่า เลือกประเภทบิลด์ของรุ่นแล้ว
- เลือกตัวเลือกในส่วนสร้าง > สร้าง Bundle / APK ที่จะสร้าง
APK หรือ App Bundle ของบิลด์ที่เผยแพร่ได้
คุณควรเห็นเอาต์พุตของบิลด์ใน
ไดเรกทอรี
build/outputs/
สำหรับโมดูล
เนื่องจากไฟล์บิลด์ไม่มีข้อมูลที่ละเอียดอ่อนแล้ว ตอนนี้คุณสามารถ
รวมไว้ในการควบคุมแหล่งที่มาหรืออัปโหลดไปยังฐานของโค้ดที่แชร์ ตรวจสอบให้แน่ใจว่า
เพื่อเก็บไฟล์ keystore.properties
ให้ปลอดภัย ซึ่งอาจรวมถึง
นำออกจากระบบควบคุมแหล่งที่มา