คำถามที่พบบ่อยเกี่ยวกับ Android App Bundle

เกี่ยวกับ Android App Bundle

Android App Bundle (AAB) คืออะไร

Android App Bundle (AAB) ซึ่งเปิดตัวในปี 2018 เป็นรูปแบบการเผยแพร่สำหรับ Android ที่ Google Play และ App Store อื่นๆ รวมถึงเครื่องมือสร้างต่างๆ เช่น Android Studio, Bazel, Buck, Cocos Creator, Gradle, Unity และ Unreal รองรับ

AAB กับ APK แตกต่างกันอย่างไร

App Bundle มีไว้สำหรับการเผยแพร่เท่านั้น และไม่สามารถติดตั้งในอุปกรณ์ Android แพ็กเกจ Android (APK) คือรูปแบบที่ติดตั้งได้และเรียกใช้ได้สำหรับแอปของ Android ผู้จัดจําหน่ายต้องประมวลผล App Bundle เป็น APK เพื่อให้ติดตั้งในอุปกรณ์ได้

AAB เป็นรูปแบบที่เป็นกรรมสิทธิ์ซึ่งใช้ได้ใน Google Play เท่านั้นใช่ไหม

ไม่ AAB ไม่ได้เป็นกรรมสิทธิ์ App Bundle เป็นโอเพนซอร์ส แอปสโตร์ใดก็ได้จึงรองรับ App Bundle Google Play และ App Store บางแห่งรองรับแพ็กเกจ

การสร้าง AAB จะป้องกันไม่ให้ฉันเผยแพร่แอปไปยัง App Store อื่นๆ ไหม

ไม่ คุณจะเผยแพร่แอปไปยัง App Store อื่นๆ ได้ เมื่อสร้างแอป คุณจะสร้าง AAB และ APK ได้พร้อมกัน ทั้งนี้ขึ้นอยู่กับรูปแบบการเผยแพร่ที่จำเป็นสำหรับแต่ละ App Store

ต้องใช้ความพยายามมากน้อยเพียงใดในการใช้ AAB

สําหรับแอปส่วนใหญ่ การสร้าง AAB นั้นทําได้ง่ายพอๆ กับการสร้าง APK เนื่องจากเพียงแค่เลือก AAB แทน APK ในเวลาที่สร้าง สำหรับบางแอป คุณอาจต้องทำการเปลี่ยนแปลงบางอย่างเพื่อให้ได้รับประโยชน์จาก AAB อย่างเต็มรูปแบบ

มีนักพัฒนาแอปที่ใช้ AAB อยู่แล้วไหม

ได้ แอปและเกมกว่า 1 ล้านรายการใช้ App Bundle เพื่อเผยแพร่รุ่นที่ใช้งานจริงใน Google Play ซึ่งรวมถึงแอปยอดนิยมส่วนใหญ่ ซึ่งคิดเป็นการดาวน์โหลดที่ใช้งานอยู่หลายพันล้านครั้ง หากคุณใช้ Google Play เพื่อติดตั้งแอป แอปจำนวนมากในอุปกรณ์ของคุณจะเผยแพร่เป็นแอปกลุ่ม

AAB ป้องกันไม่ให้ผู้ใช้ "โหลดแอปจากแหล่งที่ไม่รู้จัก" ไหม

ไม่ AAB ไม่ได้ป้องกันไม่ให้ผู้ใช้ติดตั้ง APK จากแหล่งที่มาใดก็ตาม เนื่องจาก AAB เป็นเพียงรูปแบบการเผยแพร่ จึงไม่ได้เปลี่ยนวิธีการทำงานของแพลตฟอร์ม Android

หากนักพัฒนาแอปใช้ AAB เพื่อส่ง APK ที่เพิ่มประสิทธิภาพ หมายความว่าผู้ใช้ที่แชร์ APK เหล่านั้นอาจพบปัญหาได้หรือไม่

บน Android มักจะมีบางกรณีที่พบได้น้อยเมื่อโอน APK จากอุปกรณ์หนึ่งไปยังอีกอุปกรณ์หนึ่งโดยตรงไม่ได้ ไม่ว่าแอปจะเผยแพร่ผ่าน APK หรือ AAB ก็ตาม กล่าวโดยละเอียดคือ เมื่อ APK ได้รับการเพิ่มประสิทธิภาพสำหรับอุปกรณ์ (เช่น สำหรับสถาปัตยกรรมชิปที่เฉพาะเจาะจง) การโอน APK เหล่านั้นไปยังอุปกรณ์อื่นโดยตรงอาจพบปัญหาหากอุปกรณ์เป้าหมายไม่ตรงกับพร็อพเพอร์ตี้ของอุปกรณ์เดิม ในกรณีเหล่านี้ คุณต้องติดตั้ง APK หรือชุด APK ที่เหมาะสมกับอุปกรณ์เป้าหมาย

ฉันจะเผยแพร่แอปไปยัง App Store หลายแห่งได้ไหม

ได้ คุณสามารถเผยแพร่แอปไปยัง App Store หลายแห่งได้ ไม่ว่าจะใช้ AAB หรือไม่ก็ตาม คุณสามารถเผยแพร่ AAB ใน Google Play และ App Store อื่นๆ ที่รองรับ AAB ได้พร้อมกันกับที่เผยแพร่ APK ใน App Store หรือเว็บไซต์อื่นๆ ที่ไม่รองรับ AAB

ข้อกำหนด AAB มีผลกับแอปส่วนตัวที่เผยแพร่ใน Managed Google Play ไหม

ไม่ได้ แอปส่วนตัวที่เผยแพร่ไปยัง Managed Google Play จะเผยแพร่ด้วย APK หรือ AAB ก็ได้ เมื่อสร้างแอปส่วนตัวใหม่ คุณจะเลือกเปลี่ยนคีย์ App Signing และเลือกไม่ใช้ Play App Signing ได้หากต้องการเผยแพร่ APK ส่วนตัวที่ลงนามด้วยตนเอง

เกี่ยวกับ Play App Signing

Play App Signing คืออะไร

APK ทุกรายการใน Android ต้องได้รับการรับรองด้วยวิทยาการเข้ารหัสด้วยคีย์ App Signing จึงจะติดตั้งได้ แพลตฟอร์ม Android จะใช้คีย์นี้เพื่อให้มั่นใจว่าอัปเดตแอปจะตรงกับแอปที่ติดตั้งในอุปกรณ์ เพื่อให้หลังจากการติดตั้งครั้งแรกแล้ว การอัปเดตแอปแต่ละครั้งมาจากผู้ถือคีย์รายเดียวกัน ซึ่งจะช่วยลดความเสี่ยงในการอัปเดตแอปที่เป็นอันตราย Play App Signing เปิดตัวเมื่อปี 2017 เป็นบริการจัดการคีย์ของ Google Play ที่ปกป้องและจัดการคีย์ App Signing ของนักพัฒนาแอป Play สำหรับแอปที่เผยแพร่ใน Play นอกจากนี้ Play App Signing จะดำเนินการรับรอง APK ที่ Play สร้างขึ้นจาก AAB ที่อัปโหลด แอปใหม่ต้องใช้ Play App Signing จึงจะใช้ AAB ได้

เหตุใด Google จึงเปิดตัว Play App Signing

ตลอดหลายปีที่ผ่านมา คีย์ App Signing เป็นปัญหาสำหรับนักพัฒนาแอป Play การสูญเสียคีย์จะทำให้คุณไม่สามารถส่งการอัปเดตแอปให้ผู้ใช้ได้อีกต่อไป และหากคีย์ถูกบุกรุก ผู้ใช้ก็อาจเสี่ยงที่จะได้รับอัปเดตที่เป็นอันตราย การเก็บและจัดการคีย์สำหรับซอฟต์แวร์ที่ช่องทางจัดจำหน่ายจัดจำหน่ายเป็นแนวทางปฏิบัติทั่วไปในการเผยแพร่ซอฟต์แวร์ เนื่องจากช่วยลดความเสี่ยงเหล่านี้ Play App Signing เปิดตัวในปี 2017 เพื่อลดความเสี่ยงในการสูญเสียคีย์การจัดจำหน่ายของ Play, เพื่อปกป้องผู้ใช้ Play ในกรณีที่มีการประนีประนอมคีย์ และเพื่อให้นักพัฒนาแอปได้รับประโยชน์จากการลงทุนด้านความปลอดภัยอย่างต่อเนื่องของ Google

Google รับประกันความปลอดภัยของ Play App Signing ได้อย่างไร

Google จะปกป้องคีย์ของนักพัฒนาแอปในโครงสร้างพื้นฐานที่ปลอดภัยและล้ำสมัยที่สุดในอุตสาหกรรมเดียวกันกับที่ใช้ปกป้องคีย์ของ Google เอง คีย์จะได้รับการจัดเก็บแบบเข้ารหัสในเซิร์ฟเวอร์การจัดการคีย์เฉพาะที่ล็อกอยู่ โดยมี ACL ที่เข้มงวดและร่องรอยการตรวจสอบที่ตรวจจับการดัดแปลงได้ ซึ่งครอบคลุมการดำเนินการทั้งหมด คุณสามารถดูรายละเอียดทางออนไลน์เกี่ยวกับแนวทางปฏิบัติแนะนำและการดำเนินการด้านความปลอดภัยของระบบคลาวด์ของ Google

ฉันเลือกคีย์ App Signing ที่ Play ใช้กับแอปของฉันได้ไหม

ได้ เมื่อสร้างแอปใหม่ คุณจะเลือกให้ Google สร้างและจัดเก็บคีย์ App Signing ในนามของคุณ หรือจะเลือกคีย์ App Signing ของคุณเองและอัปโหลดสําเนาก็ได้

ฉันต้องการใช้คีย์ App Signing เดียวกันสำหรับ Play และ App Store อื่นๆ การดำเนินการนี้ยังสามารถทำได้ไหม

หากตัดสินใจที่จะใช้คีย์การรับรองเดียวกันใน App Store หลายแห่งหลังจากพิจารณาวิธีการทำงานของการอัปเดตแอปแล้ว คุณยังคงดำเนินการดังกล่าวได้ โปรดทราบว่าการดำเนินการนี้จะอนุญาตให้ App Store แต่ละแห่งทำการอัปเดตแอปข้าม Store ให้กับแอปของคุณได้ คุณมี 2 ตัวเลือกดังนี้

  • คุณสร้างคีย์ในเครื่องแล้วอัปโหลดสำเนาไปยัง Play ได้ วิธีนี้จะช่วยให้คุณใช้คีย์เดียวกับที่ Google Play ใช้เมื่อสร้างแอปสำหรับ App Store อื่นๆ ได้
  • คุณสามารถใช้คีย์ที่ Google สร้างขึ้นสำหรับ Play App Signing จากนั้นดาวน์โหลด APK การจัดจำหน่ายจาก Play Console ที่รับรองด้วยคีย์ที่ Google สร้างขึ้น และใช้ APK เหล่านั้นเพื่อเผยแพร่ใน App Store หรือเว็บไซต์อื่นๆ

ฉันจะใช้ Play App Signing สำหรับแอปที่สร้างก่อนเดือนสิงหาคม 2021 โดยไม่ต้องส่งสําเนาคีย์ App Signing ได้ไหม

ได้ Play App Signing รองรับตัวเลือก "อัปเกรดคีย์" สำหรับแอปที่สร้างก่อนเดือนสิงหาคม 2021 ซึ่งจะช่วยให้แอปเริ่มใช้ Play App Signing ด้วยคีย์ App Signing ใหม่ได้ อย่างไรก็ตาม หากต้องการใช้ตัวเลือกนี้ หลังจากอัปเกรดแล้ว คุณจะต้องอัปโหลด 2 อย่างในแต่ละรุ่น ได้แก่ App Bundle และ APK เดิมที่รับรองด้วยคีย์ App Signing เดิม Play จะใช้ AAB เพื่อสร้าง APK ที่รับรองด้วยคีย์ที่อัปเกรดแล้วสำหรับการติดตั้งใหม่และการอัปเดต ขณะเดียวกัน Play ก็จะใช้ APK เดิมสำหรับการอัปเดตแอปให้กับผู้ใช้ที่มีแอปของคุณติดตั้งอยู่แล้ว เมื่อเวลาผ่านไป การติดตั้งเดิมจะย้ายข้อมูลไปยังคีย์ที่อัปเกรดแล้ว (เช่น เมื่อผู้ใช้เปลี่ยนไปใช้อุปกรณ์เคลื่อนที่เครื่องใหม่)

มีวิธีใช้คีย์ App Signing เดียวกันสำหรับแอปที่สร้างก่อนเดือนสิงหาคม 2021 และแอปที่สร้างหลังเดือนสิงหาคม 2021 ไหม

โดยทั่วไปเราไม่แนะนำให้ใช้คีย์ App Signing เดียวกันสำหรับแอปหลายแอป เนื่องจากการใช้คีย์ที่ไม่ซ้ำกันสำหรับแต่ละแอปจะปลอดภัยกว่า อย่างไรก็ตาม คุณใช้คีย์ App Signing เดียวกันสำหรับแอปหลายแอปได้หากจำเป็น หรือจะอัปโหลดสําเนาคีย์ App Signing ที่มีอยู่ก็ได้เมื่อกําหนดค่า Play App Signing หรือหากไม่ต้องการแชร์คีย์ App Signing ที่มีอยู่ คุณสามารถใช้ตัวเลือก "อัปเกรดคีย์" ที่กำลังจะเปิดตัวสำหรับแอปก่อนเดือนสิงหาคม 2021 เพื่อเริ่มใช้ Play App Signing วิธีนี้จะช่วยให้ทั้งแอปก่อนเดือนสิงหาคม 2021 และแอปหลังเดือนสิงหาคม 2021 ใช้คีย์ใหม่เดียวกันได้

ฉันจะเปลี่ยนคีย์ App Signing ที่ Play App Signing ใช้อยู่ได้ไหม

ได้ แอปเปลี่ยนคีย์ได้โดยขอการอัปเกรดคีย์ใน Play Console

ฉันจะตรวจสอบได้อย่างไรว่า Google Play ไม่ได้ทำการเปลี่ยนแปลงที่ไม่คาดคิดกับโค้ดของฉัน

คุณสามารถดาวน์โหลดและตรวจสอบอาร์ติแฟกต์จาก Google Play และจากApp Bundle Explorer ใน Play Console ได้ทุกเมื่อ นอกจากนี้ Play Developer API จะพร้อมให้ยืนยัน APK ก่อนที่คุณจะส่งไปยังแทร็กรุ่นในเร็วๆ นี้ นอกจากนี้ คุณยังใช้ฟีเจอร์ที่ไม่บังคับที่เรียกว่าความโปร่งใสของโค้ดสำหรับ App Bundle ได้ด้วย ความโปร่งใสของโค้ดช่วยให้คุณและผู้ใช้ปลายทางสามารถตรวจสอบ App Store เช่น Google Play เกี่ยวกับโค้ดที่ส่งได้

ความโปร่งใสของโค้ดสำหรับ App Bundle ทำงานอย่างไร

ความโปร่งใสของโค้ดเป็นฟีเจอร์ที่ไม่บังคับซึ่งช่วยให้คุณตรวจสอบได้ว่า App Store ที่เผยแพร่แอปของคุณรับผิดชอบต่อโค้ดที่ส่งหรือไม่ หากต้องการใช้ความโปร่งใสของโค้ด คุณจะต้องสร้างไฟล์ความโปร่งใสของโค้ดในแอปที่แสดงถึงโค้ดของคุณ (โดยเฉพาะไฟล์ที่มีแฮชของโค้ดแอป) ในเวลาที่สร้าง คุณจะลงนามด้วยรหัสส่วนตัวของคุณเอง คีย์ความโปร่งใสที่มีเพียงคุณเท่านั้นที่ถือครอง คุณไม่จำเป็นต้องให้คีย์ความโปร่งใสของโค้ดแก่ Google จากนั้นในอุปกรณ์ คุณสามารถตรวจสอบ APK ที่ติดตั้งและยืนยันว่าไฟล์ความโปร่งใสของโค้ดที่คุณลงนามยังคงตรงกับโค้ดของ APK ซึ่งจะช่วยให้คุณมั่นใจได้ว่าแม้ว่า APK เองจะได้รับการรับรองอีกครั้งในระหว่างการจัดจำหน่าย แต่โค้ดที่ได้รับการยืนยันโดยความโปร่งใสของโค้ดจะไม่มีการแก้ไข หากไม่ตรงกัน แสดงว่ามีการเปลี่ยนแปลงรหัสระหว่างการเผยแพร่ ความโปร่งใสของโค้ดไม่ได้มาแทนที่การรับรอง APK และไม่ได้เป็นส่วนหนึ่งของแพลตฟอร์ม Android

การเผยแพร่แอปและเกมขนาดใหญ่ใน Google Play

ขีดจำกัดขนาดของแอป Google Play เมื่อใช้ AAB มีเท่าใด

ขนาดการดาวน์โหลดสูงสุดที่บีบอัดสำหรับโมดูลฐานที่สร้างขึ้นจาก AAB คือ 200 MB กล่าวคือ Google Play จะสร้างโมดูลฐานก่อน จากนั้นจึงสร้างโมดูลฟีเจอร์หรือ Asset Pack เพิ่มเติมจาก AAB จากนั้น Google Play จะตรวจสอบว่าขนาดการดาวน์โหลดที่บีบอัดทั้งหมดแบบสะสมสูงสุดที่อุปกรณ์แต่ละเครื่องได้รับไม่เกิน 4 GB

Google Play รองรับไฟล์สำหรับขยาย (OBB) สำหรับ AAB ไหม

ไม่ Google Play ไม่รองรับไฟล์ขยายสำหรับ AAB ไฟล์เสริม (OBB) เป็นโซลูชันเดิมเฉพาะของ Google Play สำหรับการเผยแพร่แอปและเกมขนาดใหญ่โดยใช้ APK Google และบุคคลที่สามมีทางเลือกสำหรับ AAB ที่มีขนาดใหญ่กว่า 200 MB

ฉันจะเผยแพร่แอปหรือเกมที่มีขนาดใหญ่กว่า 200 MB ใน Google Play ได้อย่างไร

แอปและเกมขนาดใหญ่ที่ใช้ AAB สามารถใช้บริการนำส่งของ Play เช่น Play Asset Delivery หรือ Play Feature Delivery เพื่อส่งแอปที่มีขนาดใหญ่เกินขีดจำกัด 200 MB หรือจะใช้เครือข่ายนำส่งเนื้อหาของบุคคลที่สามก็ได้

Play Asset Delivery มีประโยชน์อะไรมากกว่าไฟล์สำหรับขยาย (OBB)

ใน Google Play APK ต้องใช้ไฟล์เสริม (OBB) แยกต่างหากเพื่อแสดงทรัพยากรเพิ่มเติมแก่ผู้ใช้ อย่างไรก็ตาม เนื่องจาก OBB ไม่ได้ลงชื่อและจัดเก็บไว้ในพื้นที่เก็บข้อมูลภายนอกของแอป จึงไม่ค่อยปลอดภัย เมื่อใช้ Play Asset Delivery (PAD) เกมที่มีขนาดใหญ่กว่า 200 MB จะแทนที่ OBB ได้โดยเผยแพร่ทั้งเกมเป็น App Bundle เดียวใน Play Store นอกจากจะช่วยให้กระบวนการเผยแพร่ราบรื่นขึ้นและมีโหมดการนำส่งที่ยืดหยุ่นแล้ว PAD ยังช่วยให้การอัปเดตต้องใช้พื้นที่เก็บข้อมูลในอุปกรณ์น้อยลงด้วย ด้วยเหตุนี้ จึงช่วยเพิ่มอัตราการติดตั้งได้ สุดท้ายนี้ ขณะนี้อุปกรณ์ประมาณ 80% รองรับ ASTC แล้ว ฟีเจอร์การกำหนดเป้าหมายรูปแบบการบีบอัดพื้นผิวของ PAD จะช่วยให้คุณแสดง ASTC แก่อุปกรณ์ที่รองรับได้ คุณสามารถกําหนดเป้าหมายอุปกรณ์ได้หลากหลายที่สุด ขณะเดียวกันก็ใช้ฮาร์ดแวร์และพื้นที่เก็บข้อมูลของอุปกรณ์ที่มีอยู่อย่างมีประสิทธิภาพ

ฟีเจอร์การนำส่งของ Google Play ที่ปลดล็อกโดย AAB

ตัวอย่างฟีเจอร์ใหม่ที่ Play มอบให้นักพัฒนาแอปที่ใช้ AAB มีดังนี้

App Store เช่น Google Play จะประมวลผล AAB เป็น APK ที่ติดตั้งได้ การรับผิดชอบต่อ APK จะช่วยให้คุณนำเสนอฟีเจอร์และบริการใหม่ๆ ที่เป็นประโยชน์ต่อนักพัฒนาแอปและผู้ใช้ได้ Play มีบริการดังกล่าวอยู่แล้ว ซึ่งนักพัฒนาแอปจำนวนมากใช้และให้ความสำคัญกับบริการเหล่านี้ ตัวอย่าง 2 อย่าง ได้แก่ Play Feature Delivery และ Play Asset Delivery

การนำส่งฟีเจอร์ Play คืออะไร

ฟีเจอร์หนึ่งของ App Bundle คือช่วยให้คุณแยกแอปออกเป็นหลายโมดูลได้ ซึ่งเรียกว่า "โมดูลฟีเจอร์" จากนั้นระบบจะนําส่งโมดูลเหล่านี้ไปยังผู้ใช้และอุปกรณ์แบบไดนามิกในเวลาที่ต่างกัน (ต่างจากก่อนหน้านี้ที่ทุกอย่างต้องนําส่งเป็นไฟล์เดียว ณ เวลาติดตั้ง) การนำส่งฟีเจอร์ Play ช่วยให้คุณปรับแต่งได้ว่าจะนำส่งโมดูลฟีเจอร์ใดไปยังอุปกรณ์ใดและเมื่อใดด้วยโหมดการนำส่งเมื่อติดตั้ง ตามเงื่อนไข และแบบออนดีมานด์ วิธีนี้ช่วยให้คุณลดขนาดแอปได้ ซึ่งจะเพิ่มยอดการติดตั้งและปรับแต่งประสบการณ์การใช้งานแอป ตัวอย่างเช่น คุณอาจนำส่งฟีเจอร์ที่ใช้ไม่บ่อย เช่น การสนับสนุนลูกค้าแบบออนดีมานด์ ให้แก่ผู้ใช้ที่ต้องการใช้แทนที่จะนำส่งขณะติดตั้ง ซึ่งจะช่วยลดขนาดการติดตั้งครั้งแรกสำหรับผู้ใช้ทุกคน หรือคุณจะมอบประสบการณ์การใช้งานแอปที่สมบูรณ์ให้กับอุปกรณ์ระดับสูง ในขณะที่มอบประสบการณ์การใช้งานแอปที่น้อยลงพร้อมฟีเจอร์แบบไม่บังคับแบบออนดีมานด์ให้กับอุปกรณ์ระดับเริ่มต้นที่มีข้อจำกัดด้านข้อมูลและพื้นที่เก็บข้อมูลของอุปกรณ์ก็ได้

Play Asset Delivery คืออะไร

Play Asset Delivery ช่วยให้นักพัฒนาแอปเกมปรับปรุงประสบการณ์ของผู้ใช้และลดเวลารอของผู้ใช้ได้ด้วยการนำส่งเนื้อหาขนาดใหญ่แบบไดนามิกในเวลาที่เหมาะสม เกมที่ใช้ Play Asset Delivery ยังใช้ประโยชน์จากการกําหนดเป้าหมายรูปแบบการบีบอัดพื้นผิวได้ด้วย เพื่อให้ผู้ใช้ได้รับเฉพาะชิ้นงานที่เหมาะกับอุปกรณ์ของตน โดยไม่สิ้นเปลืองพื้นที่หรือแบนด์วิดท์

ฟีเจอร์การนำส่งของ Play เหล่านี้มีให้บริการใน App Store อื่นๆ ไหม

ไม่ การนำส่งฟีเจอร์ Play และการนำส่งชิ้นงาน Play เกี่ยวข้องกับแอปและเกมที่ติดต่อกับ Google Play Store โดยตรง บริการที่ไม่บังคับเหล่านี้เป็นตัวอย่างที่แสดงให้เห็นว่า Play แตกต่างจากแอปสโตร์อื่นๆ อย่างไร และช่วยเพิ่มคุณค่าและความมีประโยชน์ให้แก่นักพัฒนาแอปและผู้ใช้ Play แอปสโตร์อื่นๆ ที่ใช้ App Bundle และ APK เสนอบริการแอปสโตร์ของตนเองให้แก่นักพัฒนาแอป