APK และแทร็ก

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

การเพิ่มและการแก้ไข APK

  1. อัปโหลด APK อย่างน้อย 1 รายการโดยเรียกใช้เมธอด Edits.apks: upload

    เมธอดนี้จะอัปโหลด APK ลงใน "ที่เก็บข้อมูล" ของพื้นที่เก็บข้อมูล ซึ่งสามารถมอบหมายให้กับ "แทร็ก" เพื่อติดตั้งใช้งานให้กับผู้ใช้ (หากการแก้ไขถูกลบหรือยกเลิก APK ที่อัปโหลดไปยังการแก้ไขนั้นจะหายไปด้วย)

  2. เผยแพร่ APK บน "tracks" โดยเรียก Edits.tracks: update คุณจะเผยแพร่ APK ในแทร็กต่อไปนี้ได้

    • แทร็กการทดสอบ เช่น "alpha" และ "beta"

      แอปเวอร์ชันอัลฟ่าและเบต้าจะใช้งานได้กับผู้ใช้ ที่คุณกำหนดให้กับกลุ่มการทดสอบเวอร์ชันอัลฟ่าและเบต้า คุณจะกำหนดผู้ใช้ให้กับกลุ่มเหล่านี้โดยใช้ Google Play Console

    • แทร็กทดสอบภายใน: "qa"

      ระบบจะนำแอปเวอร์ชันภายในไปใช้กับแทร็กทดสอบภายในตามที่กำหนดค่าไว้ใน Google Play Console

    • แทร็กเวอร์ชันที่ใช้งานจริง: "production"

      รุ่นในแทร็ก "เวอร์ชันที่ใช้งานจริง" จะนำไปใช้กับผู้ใช้ทุกคน คุณสามารถใช้การเปิดตัวแบบทีละขั้นในแทร็ก "เวอร์ชันที่ใช้งานจริง" เพื่อทำให้รุ่นของคุณใช้งานได้ก่อนอย่างปลอดภัยสำหรับผู้ใช้เวอร์ชันที่ใช้งานจริงกลุ่มเล็กๆ จากนั้นจึงค่อยๆ เพิ่มเปอร์เซ็นต์นี้เมื่อความมั่นใจในการเปิดตัวเพิ่มมากขึ้น

    ผู้ใช้ที่ใช้โหมดแบบง่ายไม่ควรใส่ APK มากกว่าหนึ่งรายการลงในแทร็กใดๆ ผู้ใช้โหมดขั้นสูงที่ใช้การรองรับ APK หลายรายการ สามารถอัปโหลด APK ศูนย์ 1 รายการ หรือหลายรายการไปยังแต่ละแทร็กได้

ชื่อแทร็กสำหรับรูปแบบของอุปกรณ์

ชื่อแทร็กสำหรับแทร็กรูปแบบของอุปกรณ์จะขึ้นต้นด้วยตัวระบุที่เฉพาะเจาะจง

รูปแบบ คำนำหน้า
Android Automotive OS ยานยนต์
Wear OS Wear
Android TV ทีวี

วิธีคํานวณชื่อแทร็กสําหรับแทร็กรูปแบบของอุปกรณ์หนึ่งๆ

ประเภทแทร็กทั่วไป เช่น เวอร์ชันที่ใช้งานจริง การทดสอบแบบเปิด และแทร็กทดสอบภายในจะมีชื่อที่เป็นที่รู้จักกันดี

ประเภทการติดตาม ชื่อแทร็กเริ่มต้น
Production การถ่ายทำ
การทดสอบแบบเปิด เบต้า
การทดสอบภายใน qa

ระบบจะคำนวณชื่อแทร็กสำหรับแทร็กรูปแบบของอุปกรณ์ที่ระบุดังนี้ "[prefix]:defaultTrackName" เช่น รูปแบบของอุปกรณ์ Wear OS จะมีแทร็กที่ชื่อว่า "wear:production", "wear:beta" และ "wear:qa"

แทร็กทดสอบแบบปิดนั้นสร้างขึ้นด้วยตนเองและมีชื่อที่กำหนดเอง ดังนั้นแทร็กทดสอบแบบปิดของรูปแบบของอุปกรณ์ชื่อ $name จะมีชื่อแทร็กเป็น "[prefix]:$name"

ตัวอย่างเวิร์กโฟลว์ของ APK

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

  1. เปิดการแก้ไขใหม่ตามที่อธิบายไว้ในการแก้ไขเวิร์กโฟลว์
  2. เรียกใช้วิธีการ Edits.apks: การอัปโหลดสำหรับ APK แต่ละรายการที่คุณต้องการอัปโหลด ส่ง APK ในเนื้อหาคำขอของเมธอด (วิธีนี้จะวาง APK ไว้ในพื้นที่เก็บข้อมูล แต่ไม่ได้เผยแพร่ในแทร็กหรือทำให้ใช้งานได้) วิธีการนี้จะแสดงรหัสเวอร์ชันของ APK แต่ละรายการที่คุณอัปโหลด คุณจะใช้รหัสเวอร์ชันนี้เพื่ออ้างถึง APK เมื่อเผยแพร่ในแทร็ก
  3. เรียกเมธอด Edits.tracks: update สำหรับแต่ละแทร็กที่คุณต้องการเผยแพร่ APK ในส่วนเนื้อหาของคำขอ ให้ส่งทรัพยากร Edits.tracks ที่มีรุ่นที่คุณต้องการเปิดตัว เช่น หากต้องการเผยแพร่ APK ที่มีรหัสเวอร์ชัน 88 ให้ทำดังนี้

    {
    "releases": [{
      "versionCodes": ["88"],
      "status": "completed"
    }]
    }
    

    ขณะนี้ APK ยังไม่พร้อมให้บริการสำหรับผู้ใช้ การเปลี่ยนแปลงจะไม่แสดงผลจนกว่าคุณจะยืนยัน

  4. เรียกใช้เมธอดการแก้ไข: คอมมิต เพื่อคอมมิตการเปลี่ยนแปลง หลังจากนั้น ผู้ใช้ในแต่ละแทร็กจะได้รับ APK เวอร์ชันที่อัปเดตแล้ว (เช่นเดียวกับการแก้ไขทั้งหมด อาจใช้เวลาหลายชั่วโมงกว่าการเปลี่ยนแปลงจะมีผล)

การเปิดตัวแบบทีละขั้น

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

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

  1. ทำการแก้ไขตามที่อธิบายไว้ในการแก้ไขเวิร์กโฟลว์

  2. อัปโหลด APK ใหม่ไปยังการแก้ไขโดยใช้วิธีการ Edits.apks: อัปโหลด

  3. เริ่มการเปิดตัวแบบทีละขั้นของ "inProgress" ในแทร็กเวอร์ชันที่ใช้งานจริงโดยใช้เมธอด Edits.tracks: อัปเดต เลือกสัดส่วนของผู้ใช้ที่ควรได้รับ APK ใหม่ ขณะนี้ APK ยังไม่พร้อมให้บริการสำหรับผู้ใช้ปลายทาง

    {
    "releases": [{
      "versionCodes": ["99"],
      "userFraction": 0.05,
      "status": "inProgress"
    }]
    }
    

  4. ยืนยันการเปลี่ยนแปลงในการแก้ไขที่ทำงานอยู่โดยการเรียกใช้ Edits: Computing ในอีกไม่กี่ชั่วโมงนี้ APK ใหม่จะเปิดตัวให้กับผู้ใช้ ส่วนของผู้ใช้ที่คุณเลือกจะได้รับ APK ใหม่

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

การเพิ่มส่วนผู้ใช้สำหรับการเปิดตัวแบบทีละขั้น

สมมติว่าคุณมีการเปิดตัวแบบทีละขั้นอย่างต่อเนื่องที่ 5% ดังที่อธิบายไว้ในส่วนก่อนหน้านี้ ส่วนนี้จะอธิบายวิธีการเพิ่มเปอร์เซ็นต์ในกรณีที่การเปิดตัวไปได้ดี ดังนี้

  1. ทำการแก้ไขตามที่อธิบายไว้ในการแก้ไขเวิร์กโฟลว์

  2. เปลี่ยนรุ่นแบบทีละขั้นของ "inProgress" ในแทร็กเวอร์ชันที่ใช้งานจริงโดยใช้เมธอด Edits.tracks: อัปเดต เพิ่มสัดส่วนของผู้ใช้ที่ควรได้รับ APK ใหม่:

    {
    "releases": [{
      "versionCodes": ["99"],
      "userFraction": 0.1,
      "status": "inProgress"
    }]
    }
    

  3. ยืนยันการเปลี่ยนแปลงในการแก้ไขที่ทำงานอยู่โดยการเรียกใช้ Edits: Computing ในอีกไม่กี่ชั่วโมงนี้ APK ใหม่จะเปิดตัวให้กับผู้ใช้ ส่วนของผู้ใช้ที่คุณเลือกจะได้รับ APK ใหม่

การหยุดการเปิดตัวแบบทีละขั้น

สมมติว่าคุณมีการเปิดตัวแบบทีละขั้นอย่างต่อเนื่องที่ 5% ตามที่อธิบายไว้ในส่วนก่อนหน้า ส่วนนี้จะอธิบายวิธีหยุดการเปิดตัวแบบทีละขั้นเผื่อไว้ในกรณีที่คุณพบปัญหา

  1. ทำการแก้ไขตามที่อธิบายไว้ในการแก้ไขเวิร์กโฟลว์

  2. เปลี่ยนรุ่นแบบทีละขั้นของ "inProgress" ในแทร็กเวอร์ชันที่ใช้งานจริงโดยใช้เมธอด Edits.tracks: อัปเดต ตั้งค่าสถานะเป็น "halted"

    {
    "releases": [{
      "versionCodes": ["99"],
      "status": "halted"
    }]
    }
    

  3. ยืนยันการเปลี่ยนแปลงในการแก้ไขที่ทำงานอยู่โดยการเรียกใช้ Edits: Computing รุ่นของคุณจะไม่ปรากฏ สำหรับผู้ใช้ใหม่อีกต่อไป

หากในภายหลังคุณตัดสินใจที่จะทำให้รุ่นที่ถูกหยุดใช้งานต่อ คุณสามารถทำได้โดยการตั้งค่าสถานะกลับไปเป็น "inProgress"

การเปิดตัวแบบทีละขั้น

เมื่อคุณพอใจกับการเปิดตัวแบบทีละขั้นแล้วและต้องการเปิดตัวรุ่นแก่ผู้ใช้ครบ 100% คุณสามารถตั้งค่าสถานะของรุ่นเป็น "completed" ดังนี้

  1. ทำการแก้ไขตามที่อธิบายไว้ในการแก้ไขเวิร์กโฟลว์

  2. เปลี่ยนรุ่นแบบทีละขั้นของ "inProgress" ในแทร็กเวอร์ชันที่ใช้งานจริงโดยใช้เมธอด Edits.tracks: อัปเดต ตั้งค่าสถานะเป็น "completed"

    {
    "releases": [{
      "versionCodes": ["99"],
      "status": "completed"
    }]
    }
    

  3. ยืนยันการเปลี่ยนแปลงในการแก้ไขที่ทำงานอยู่โดยการเรียกใช้ Edits: Computing ในอีกไม่กี่ชั่วโมงนี้ APK ใหม่จะเปิดตัวให้กับผู้ใช้ ส่วนของผู้ใช้ที่คุณเลือกจะได้รับ APK ใหม่

เวอร์ชันร่าง

เวอร์ชันร่างช่วยให้คุณอัปโหลด APK โดยอัตโนมัติและสร้างรุ่นผ่าน API ซึ่งจะทำให้ใช้งานได้ในภายหลังผ่าน Google Play Console วิธีสร้างเวอร์ชันร่างในแทร็ก

  1. เปิดการแก้ไขใหม่ตามที่อธิบายไว้ในการแก้ไขเวิร์กโฟลว์
  2. เรียกใช้วิธีการ Edits.apks: การอัปโหลดสำหรับ APK แต่ละรายการที่คุณต้องการอัปโหลด ส่ง APK ในเนื้อหาคำขอของเมธอด วิธีนี้แสดงผลรหัสเวอร์ชันของ APK แต่ละรายการที่คุณอัปโหลด คุณจะใช้รหัสเวอร์ชันนี้เพื่ออ้างถึง APK เมื่อกำหนดให้กับรุ่น
  3. เรียกใช้เมธอด Edits.tracks: update สำหรับแต่ละแทร็กที่คุณต้องการเผยแพร่ ในส่วนเนื้อหาของคำขอ ให้ส่งทรัพยากร Edits.tracks ที่มีเวอร์ชันร่างที่คุณต้องการสร้าง ตัวอย่างเช่น

    {
    "releases": [{
      "name": "My draft release",
      "versionCodes": ["88"],
      "status": "draft"
    }]
    }
    

  4. เรียกใช้เมธอดการแก้ไข: คอมมิต เพื่อคอมมิตการเปลี่ยนแปลง ตอนนี้คุณสามารถตรวจสอบและเปิดตัวเวอร์ชันร่างผ่าน Google Play Console หรือ API ได้แล้ว

การระบุบันทึกประจำรุ่น

ขณะเปิดตัวแอปพลิเคชันเวอร์ชันใหม่ คุณสามารถไฮไลต์สิ่งใหม่ๆ สำหรับผู้ใช้ด้วยการระบุบันทึกประจำรุ่นในรุ่นของคุณ

ซึ่งทำได้โดยใช้ช่อง "releaseNotes" เมื่อส่งทรัพยากร Edits.tracks ในเมธอด Edits.tracks: update

{
  "releases": [{
      "name": "Release with notes",
      "versionCodes": ["88"],
      "status": "completed",
      "releaseNotes": [
        {"language": "en-US", "text": "Describe what's new in this release."}
      ]
  }]
}