เผยแพร่แอป Android ให้ผู้ทดสอบโดยใช้ Firebase CLI

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

ก่อนเริ่มต้น

เพิ่ม Firebase ลงในโปรเจ็กต์ Android หากยังไม่ได้ทำ

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

ขั้นตอนที่ 1 สร้างแอปของคุณ

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

ขั้นตอนที่ 2 เผยแพร่แอปของคุณให้ผู้ทดสอบ

หากต้องการเผยแพร่แอปให้กับผู้ทดสอบ ให้อัปโหลดไฟล์ของแอปโดยใช้ Firebase CLI ดังนี้

  1. ติดตั้งหรืออัปเดต Firebase CLI เป็นเวอร์ชันล่าสุด (เราขอแนะนำให้ดาวน์โหลดไบนารีแบบสแตนด์อโลนสำหรับ CLI สำหรับระบบปฏิบัติการของคุณโดยเฉพาะ) อย่าลืมลงชื่อเข้าใช้และทดสอบว่าคุณสามารถเข้าถึงโปรเจ็กต์ของคุณได้หรือไม่
  2. ในหน้า App Distribution ของคอนโซล Firebase ให้เลือกแอปที่ต้องการเผยแพร่แล้วคลิกเริ่มต้นใช้งาน
  3. เรียกใช้คำสั่ง appdistribution:distribute เพื่ออัปโหลดแอปและเผยแพร่ไปยังผู้ทดสอบ ใช้พารามิเตอร์ต่อไปนี้เพื่อกำหนดค่าการกระจาย

    การจัดจำหน่าย:ตัวเลือกการเผยแพร่
    --app

    ต้องระบุ: รหัสแอป Firebase ของแอป ดูรหัสแอปได้ในคอนโซล Firebase ในหน้าการตั้งค่าทั่วไป

    --app 1:1234567890:android:0a1b2c3d4e5f67890
    --token

    โทเค็นการรีเฟรชที่พิมพ์เมื่อตรวจสอบสิทธิ์สภาพแวดล้อม CI ด้วย Firebase CLI (อ่านข้อมูลเพิ่มเติมในใช้ CLI กับระบบ CI )

    --token "$FIREBASE_TOKEN"
    --release-notes
    --release-notes-file

    บันทึกประจำรุ่นสำหรับบิลด์นี้

    คุณสามารถระบุบันทึกประจำรุ่นได้โดยตรง โดยทำดังนี้

    --release-notes "Text of release notes"

    หรือระบุเส้นทางไปยังไฟล์ข้อความธรรมดา

    --release-notes-file "/path/to/release-notes.txt"
    --testers
    --testers-file

    อีเมลของผู้ทดสอบที่คุณต้องการเชิญ

    คุณจะระบุผู้ทดสอบเป็นรายชื่ออีเมลที่คั่นด้วยคอมมาได้ดังนี้

    --testers "ali@example.com, bri@example.com, cal@example.com"

    หรือระบุเส้นทางไปยังไฟล์ข้อความธรรมดาที่มีรายการอีเมลที่คั่นด้วยคอมมา ดังนี้

    --testers-file "/path/to/testers.txt"
    --groups
    --groups-file

    กลุ่มผู้ทดสอบที่ต้องการเชิญ (โปรดดูหัวข้อจัดการผู้ทดสอบ) มีการระบุกลุ่มโดยใช้ชื่อแทนกลุ่ม ซึ่งคุณสามารถ ค้นหาได้ในคอนโซล Firebase

    คุณระบุกลุ่มเป็นรายการที่คั่นด้วยคอมมาได้ดังนี้

    --groups "qa-team, trusted-testers"

    หรือจะระบุเส้นทางไปยังไฟล์ข้อความธรรมดาที่มีรายชื่อกลุ่มที่คั่นด้วยคอมมาก็ได้ ดังนี้

    --groups-file "/path/to/groups.txt"
    --debug

    แฟล็กที่คุณสามารถใส่เพื่อพิมพ์เอาต์พุตบันทึกแบบละเอียด

    --test-devices
    --test-devices-file

    ประเภทการเผยแพร่ต่อไปนี้เป็นส่วนหนึ่งของฟีเจอร์เวอร์ชันเบต้าของผู้ทดสอบอัตโนมัติ

    อุปกรณ์ทดสอบที่คุณต้องการเผยแพร่บิลด์ (ดูการทดสอบอัตโนมัติ)

    คุณจะระบุผู้ทดสอบเป็นรายชื่ออีเมลที่คั่นด้วยคอมมาได้ดังนี้

    --test-devices: "model=shiba,version=34,locale=en,orientation=portrait;model=b0q,version=33,locale=en,orientation=portrait"

    หรือจะระบุเส้นทางไปยังไฟล์ข้อความธรรมดาที่มีรายการอุปกรณ์ทดสอบที่คั่นด้วยเครื่องหมายอัฒภาคก็ได้ ดังนี้

    --test-devices-file: "/path/to/test-devices.txt"
    --test-username

    ชื่อผู้ใช้สำหรับการเข้าสู่ระบบอัตโนมัติที่จะใช้ระหว่างการทดสอบอัตโนมัติ

    --test-password
    --test-password-file

    รหัสผ่านสำหรับการเข้าสู่ระบบอัตโนมัติที่จะใช้ระหว่างการทดสอบอัตโนมัติ

    หรือระบุเส้นทางไปยังไฟล์ข้อความธรรมดาที่มีรหัสผ่านก็ได้ ดังนี้

    --test-password-file: "/path/to/test-password.txt"
    --test-username-resource

    ชื่อทรัพยากรของช่องชื่อผู้ใช้สำหรับการเข้าสู่ระบบอัตโนมัติที่จะใช้ระหว่างการทดสอบอัตโนมัติ

    --test-password-resource

    ชื่อทรัพยากรของช่องรหัสผ่านสำหรับการเข้าสู่ระบบอัตโนมัติที่จะใช้ระหว่างการทดสอบอัตโนมัติ

    --test-non-blocking

    เรียกใช้การทดสอบอัตโนมัติแบบไม่พร้อมกัน ไปที่คอนโซล Firebase เพื่อดูผลการทดสอบอัตโนมัติ

    เช่น

    firebase appdistribution:distribute test.apk  \
        --app 1:1234567890:android:0a1b2c3d4e5f67890  \
        --release-notes "Bug fixes and improvements" --testers-file testers.txt
    

    Firebase CLI จะแสดงลิงก์ต่อไปนี้หลังจากการอัปโหลดรุ่น ลิงก์เหล่านี้ช่วยคุณจัดการไบนารีและดูแลให้ผู้ทดสอบและนักพัฒนาซอฟต์แวร์รายอื่นๆ มีรุ่นที่ถูกต้อง

    • firebase_console_uri - ลิงก์ไปยังคอนโซล Firebase ที่แสดงรุ่นซิงเกิล โดยคุณจะแชร์ลิงก์นี้กับนักพัฒนาซอฟต์แวร์คนอื่นๆ ในองค์กรได้
    • testing_uri - ลิงก์ไปยังรุ่นในประสบการณ์การใช้งานของผู้ทดสอบ (แอป Android ที่มาพร้อมเครื่อง) ที่ช่วยให้ผู้ทดสอบดูบันทึกประจำรุ่นและติดตั้งแอปลงในอุปกรณ์ของตนได้ ผู้ทดสอบต้องการสิทธิ์เข้าถึงรุ่นเพื่อใช้ลิงก์
    • binary_download_uri - ลิงก์ที่ลงชื่อซึ่งดาวน์โหลดและติดตั้งไบนารีของแอปโดยตรง (ไฟล์ APK หรือ AAB) ลิงก์จะหมดอายุหลังจากผ่านไป 1 ชั่วโมง

    จัดการผู้ทดสอบและกลุ่ม

    นอกจากการเผยแพร่รุ่นแล้ว คุณยังใช้ appdistribution:testers:add และ appdistribution:testers:remove เพื่อเชิญผู้ทดสอบใหม่หรือนำผู้ทดสอบที่มีอยู่ออกจากโปรเจ็กต์ Firebase ได้ด้วย

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

    เช่น

    firebase appdistribution:testers:add anothertester@email.com moretesters@email.com
    
    firebase appdistribution:testers:remove anothertester@email.com moretesters@email.com
    

    ต้องคั่นอีเมลผู้ทดสอบด้วยการเว้นวรรค หรือจะระบุผู้ทดสอบโดยใช้ --file /path/to/testers.txt ก็ได้

    หากมีผู้ทดสอบจำนวนมากคุณควรลองใช้กลุ่ม โดยคุณจะใช้ appdistribution:group:create และ appdistribution:group:delete เพื่อสร้างหรือลบกลุ่มในโปรเจ็กต์ Firebase ได้

    ใช้ --group-alias เพื่อระบุกลุ่มสำหรับคำสั่ง appdistribution:testers:add และ appdistribution:testers:remove

    เช่น

    firebase appdistribution:group:create "QA team" qa-team
    
    firebase appdistribution:testers:add --group-alias=qa-team anothertester@email.com moretesters@email.com
    
    firebase appdistribution:testers:remove --group-alias=qa-team anothertester@email.com moretesters@email.com
    
    firebase appdistribution:group:delete qa-team
    

เมื่อเผยแพร่บิลด์แล้ว บิลด์จะพร้อมใช้งานในหน้าแดชบอร์ดของ App Distribution ของคอนโซล Firebase เป็นเวลา 150 วัน (5 เดือน) เมื่อบิลด์ใกล้หมดอายุ 30 วัน การแจ้งเตือนการหมดอายุจะปรากฏขึ้นทั้งในคอนโซลและรายชื่อบิลด์ของผู้ทดสอบในอุปกรณ์ทดสอบ

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

ผู้ทดสอบมีเวลา 30 วันในการยอมรับคำเชิญให้ทดสอบแอปก่อนหมดอายุ เมื่อคำเชิญหมดอายุในอีก 5 วัน การแจ้งเตือนการหมดอายุจะปรากฏในคอนโซล Firebase ถัดจากผู้ทดสอบในรุ่น คุณจะต่ออายุคำเชิญได้โดยส่งอีกครั้งโดยใช้เมนูแบบเลื่อนลงในแถวผู้ทดสอบ

ขั้นตอนถัดไป