ส่งเบต้าเทสให้ testers ด้วย Fastlane + Firebase App Distribution (iOS)
Firebase App Distribution คือบริการใหม่ของ Firebase ที่จะช่วยให้คุณส่งแอพฯไปเทสบน mobile device ของ testers ได้และไม่ต้องลง SDK อื่นนอกจาก Firebase
อีกทั้งยังมีสถิติต่างๆในแต่ละเวอร์ชั่น และที่สำคัญเป็นบริการที่เปิดให้ใช้ ฟรี!! (ตอนเขียนบทความนี้ยังเป็น beta version อยู่)
ก่อนเริ่มใช้งาน
ก่อนเริ่มต้องเพิ่ม Firebase เข้า project ที่ต้องการใช้งาน สามารถดูวิธีการได้ในลิ้งค์ด้านล่างครับ
https://firebase.google.com/docs/ios/setup
ตอนลงทะเบียน iOS Application กับ Firebase project
**Bundle ID ต้องเป็นตัวเดียวกับ Project ที่ใช้งาน**
1. เปิดใช้งาน App Distribution
หลังจากทำการ setup Firebase เข้า project เรียบร้อยแล้ว เราจะมาเปิดใช้งาน App Distribution กันครับ โดยเข้าไปที่ Firebase project ที่เพิ่งสร้างขึ้นมาและไปในส่วนของ menu App Distribution ตามวงรีในภาพด่านล่าง
เลือก application ที่ต้องการใช้งาน Feature App Distribution ถ้ายังไม่เคยใช้ feature นี้ให้กดปุ่ม Get started ตามภาพด้านล่าง
เมื่อกด Get started แล้วจะพบหน้าต่างแบบภาพด้านล่าง
2. เพิ่มและสร้าง Tester groups
ก่อนที่เราจะส่งแอพฯ ให้ tester เทสก็ต้องมี tester ที่ต้องการเทสโดยไปที่หัวข้อ Testers & Groups ใส่ e-mail ของ tester ที่ต้องการ หรือจะสร้าง group ของ tester โดยกดปุ่ม Add group ก็ได้
** e-mail ของ tester ต้องลงทะเบียนเป็น Google Account
3. สร้างไฟล์ ipa
ขั้นถัดไปคือการเตรียมไฟล์ ipa ให้พร้อมครับ โดยไฟล์ ipa ที่ว่าจะมีเงื่อนไขคือ ต้องไม่เป็นการ Distribute App ขึ้น App Store โดยวิธีสร้าง ipa ที่ผมเสนอมี 2 แบบตามความชอบและความสะดวกเลยครับ
3.1 สร้างด้วย Xcode
วิธีที่คุ้นเคยกันดีในหมู่ iOS developer เลือก distribute method ให้ตรงกับ provisioning ที่ใช้ (Ad Hoc, Enterprise, Development) และทำตาม step ของ โปรแกรม Xcode ก็ได้จะไฟล์ ipa มาใช้งาน
3.2 สร้างด้วย Fastlane
ถ้าไม่ใช้ xcode build ก็สามารถใช้ tools อย่าง Fastlane ได้ครับสามารถดูได้จากบทความด้านล่าง
4. Upload ขึ้น Firebase App Distribution
หลังจากได้ไฟล์ ipa พร้อมแล้วจะเริ่มขั้นตอน upload file ipa ขึ้น Firebase App Distibution กันครับ โดยจะแบ่งเป็น 2 วิธีตามความชอบและความสะดวก
4.1 upload ผ่าน Firebase console
upload ไฟล์ ipa โดยผ่าน Firebase Console หน้าเว็บไซต์ เพียงแค่ลากไฟล์ ipa ไปใส่ใน console หน้าเว็บ หรือ จะกด Bowse เพื่อเลือกไฟล์จากในเครื่องก็ได้
เมื่อ upload สำเร็จก็ต้องทำการเพิ่ม tester หรือกลุ่ม ที่ได้ลงทะเบียนไว้ในหัวข้อด้าน เพื่อรับการเทสใน version นั้นๆ
4.2 upload ผ่าน Fastlane
วิธีการใช้ Fastlane ร่วมกับ Firebase App Distribution วิธีการนี้จะช่วยลดขั้นตอนการทำงานแบบวิธีการด้านบน โดยเราจะไป setup ผ่านทาง Fastlane และ command-line โดยมีวิธีการดังนี้
4.2.1 ติดตั้ง Fastlane
สามารถทำตามได้ในหัวข้อที่ 1 และ 2
4.2.2 ติดตั้ง Plugin Fastlane
โดยไปที่ project ที่ได้ติดตั้ง Fastlane ไว จากนั้นเปิด terminal และใช้คำสั่ง
fastlane add_plugin firebase_app_distribution
4.2.3 ติดตั้ง Firebase CLI Tool
ติดตั้ง Firebase CLI โดยใช้คำสั่งด้านล่างใน terminal
curl -sL https://firebase.tools | bash
4.2.4 ล็อกอินเข้า Firebase
หลังติดตั้ง Firebase CLI เรียบร้อยแล้วต้องทำการยืนยันตัวตนด้วย Google account ที่ได้ลงทะเบียนกับ Firebase project ที่เราต้องการด้วยคำสั่ง
firebase login
4.2.5 ทดสอบการเข้า project
เพื่อตรวจสอบว่า account เรา สามารถเข้าถึง project ไหนได้บ้าง โดยใช้คำสั่ง
firebase projects:list
4.2.6 Setup Fastfile
เพิ่มคำสั่งตามรูปด้านล่าง แล้ว save ไฟล์
desc — ใช้อธิบายขั้นตอน(lane) นั้นๆ
lane — คือขั้นตอนการทำงานในที่นี้คือ ‘distribute’ เป็นชื่อที่เรากำหนดได้เอง
app — คือ Google App ID ดูได้จาก apps ที่สร้างเพิ่มในตอนต้น
ipa_path — โฟลเดอร์ที่เก็บไฟล์ ipa ไว้
testers — e-mail ของ tester ที่อยู่ใน ที่ได้ลงทะเบียนไว้ในหัวข้อด้านบน
group — ชื่อ group ที่ลงทะเบียนไว้ใน หัวข้อด้านบน
4.2.7 ไปที่ project แล้ว เปิด terminal และใช้คำสั่ง
fastlane distribute
(distribute คือชื่อการทำงานที่กำหนดไว้ในตัวอย่างด้านบน)
4.2.8 รอจน upload สำเร็จ
5. การตอบรับเป็น Tester
5.1 กรณีไม่เคยตอบรับเป็น Tester ของ project มาก่อน
5.1.1 เปิด e-mail ที่ได้รับการเชิญในโทรศัพท์และกดปุ่ม Accept Invitation
5.1.2 ทำการเข้าสู่ระบบด้วย e-mail ที่ได้รับการเชิญ
5.1.3 ติดตั้งแอพฯ Firebase App Distribution
5.1.4 เปิดแอพฯ แล้วทำการ download version ที่ต้องการทดสอบ
5.2 กรณีเคยตอบรับมาแล้ว
จะได้ e-mail แจ้งเตือน เมื่อเปิดดูจะได้เปิดการ download แอพฯ version ล่าสุดแทน
สรุป
บริการใหม่ของ Firebase App Distribution เป็นบริการ beta deployment ที่ช่วยให้ส่งเทสได้สะดวกมากยิ่งขึ้น และยังเป็นบริการที่เปิดให้ใช้ฟรี