คู่มือนี้อธิบายวิธีเปิดใช้ความคิดเห็นในแอปโดยใช้ Firebase App Distribution Android SDK (ไม่บังคับ) เพื่อให้ผู้ทดสอบส่งความคิดเห็น (รวมถึงภาพหน้าจอ) ได้โดยตรงในแอป
ก่อนเริ่มต้น
เพิ่ม Firebase ลงในโปรเจ็กต์ Android หากยังไม่ได้เพิ่ม
ขั้นตอนที่ 1: เปิดใช้ App Distribution Tester API
เปิดคอนโซล Google Cloud แล้วเลือกโปรเจ็กต์ Firebase
คลิกเปิดใช้ในส่วน Firebase App Testers API
ขั้นตอนที่ 2: เพิ่ม App Distribution ลงในแอป
Android SDK ของ App Distribution ประกอบด้วยไลบรารี 2 รายการ ได้แก่
firebase-appdistribution-api: ไลบรารี API เท่านั้น ซึ่งคุณรวมไว้ในตัวแปรบิลด์ทั้งหมดได้firebase-appdistribution: การติดตั้งใช้งาน SDK แบบเต็ม (ไม่บังคับ)
ไลบรารีแบบ API เท่านั้นช่วยให้โค้ดของคุณเรียกใช้ SDK ได้ การเรียกจะไม่มีผลหากไม่มีการติดตั้งใช้งาน SDK แบบเต็ม
ประกาศทรัพยากร Dependency สำหรับ App Distribution Android SDK ในไฟล์ Gradle ระดับโมดูล (ระดับแอป) (โดยปกติคือ
<project>/<app-module>/build.gradle.ktsหรือ<project>/<app-module>/build.gradle)หากต้องการหลีกเลี่ยงการรวมฟังก์ชันการอัปเดตด้วยตนเองของการติดตั้งใช้งาน SDK แบบเต็มไว้ในบิลด์ Google Play ให้ระบุตัวแปรบิลด์ ซึ่งรวมถึงประเภทบิลด์หรือเวอร์ชันผลิตภัณฑ์ที่คุณจะเผยแพร่ผ่าน App Distribution
ประกาศทรัพยากร Dependency สำหรับ Android SDK ของ App Distribution ในไฟล์ Gradle ของโมดูล (ระดับแอป) (โดยปกติคือ
app/build.gradle) เพิ่มการติดตั้งใช้งาน SDK แบบเต็มลงในตัวแปรที่มีไว้สำหรับการทดสอบรุ่นทดลองเท่านั้นKotlin
dependencies { // ADD the API-only library to all variants implementation("com.google.firebase:firebase-appdistribution-api:16.0.0-beta21") // ADD the full SDK implementation to the "beta" variant only (example) betaImplementation("com.google.firebase:firebase-appdistribution:16.0.0-beta21") }
Java
dependencies { // ADD the API-only library to all variants implementation("com.google.firebase:firebase-appdistribution-api:16.0.0-beta21") // ADD the full SDK implementation to the "beta" variant only (example) betaImplementation("com.google.firebase:firebase-appdistribution:16.0.0-beta21") }
หากกำลังมองหาโมดูลไลบรารีเฉพาะ Kotlin ตั้งแต่รุ่นเดือนตุลาคม 2023 เป็นต้นไป ทั้งนักพัฒนา Kotlin และ Java จะใช้โมดูลไลบรารีหลักได้ ดูรายละเอียดได้ที่คำถามที่พบบ่อยเกี่ยวกับโครงการริเริ่มนี้
ขั้นตอนที่ 3: กำหนดค่าความคิดเห็นในแอป
หากต้องการรวบรวมความคิดเห็นจากผู้ทดสอบ ให้ใช้ทริกเกอร์อย่างใดอย่างหนึ่งต่อไปนี้เพื่อเปิดใช้ให้ผู้ทดสอบเริ่มแสดงความคิดเห็นได้
ทริกเกอร์การแจ้งเตือนในตัว: Android SDK ของ App Distribution สามารถแสดงการแจ้งเตือนที่กำลังดำเนินอยู่ซึ่งผู้ทดสอบสามารถแตะได้จากทุกที่ในแอป ใช้ทริกเกอร์นี้หากต้องการเริ่มต้นใช้งานได้เร็วขึ้นและไม่จำเป็นต้องปรับแต่งวิธีที่ผู้ทดสอบแสดงความคิดเห็น
ทริกเกอร์ที่กำหนดเอง: คุณสามารถระบุกลไกทริกเกอร์ของคุณเองได้ เช่น การแตะปุ่มหรือรายการเมนูในแอป หรือการเขย่าอุปกรณ์
เมื่อคุณใช้ทริกเกอร์อย่างใดอย่างหนึ่งเหล่านี้และผู้ทดสอบส่งความคิดเห็น Android SDK จะดำเนินการต่อไปนี้
จับภาพหน้าจอของกิจกรรมปัจจุบันของแอป
เรียกใช้การตรวจสอบเพื่อให้แน่ใจว่าผู้ทดสอบเปิดใช้ฟีเจอร์การทดสอบของ SDK หากไม่ได้เปิดใช้ฟีเจอร์การทดสอบ Android SDK จะแจ้งให้ผู้ทดสอบลงชื่อเข้าใช้ App Distribution ด้วยบัญชี Google
เริ่มกิจกรรมแบบเต็มหน้าจอที่ช่วยให้ผู้ทดสอบเขียนและส่งความคิดเห็นได้
ตัวเลือกที่ 1: ทริกเกอร์การแจ้งเตือน
ใช้ showFeedbackNotification() เพื่อแสดงการแจ้งเตือนแบบถาวรหรือต่อเนื่องในอุปกรณ์ของผู้ทดสอบ ซึ่งผู้ทดสอบสามารถแตะเพื่อเริ่มแสดงความคิดเห็นได้ เมื่อกำหนดค่าการแจ้งเตือน คุณต้องระบุข้อความที่จะแสดงต่อผู้ทดสอบก่อนที่จะส่งความคิดเห็น และระดับการรบกวนสำหรับการแจ้งเตือน (สอดคล้องกับความสำคัญของช่องทางการแจ้งเตือน) หากต้องการแจ้งให้ผู้ทดสอบทราบเกี่ยวกับการรวบรวมและการประมวลผลข้อมูลความคิดเห็น คุณสามารถใช้ข้อความเพื่อแจ้งให้ทราบได้
เมื่อคุณใช้ showFeedbackNotification() และเมื่อแอปทำงานในเบื้องหลัง ระบบจะซ่อนการแจ้งเตือน หากต้องการซ่อนการแจ้งเตือนอย่างชัดแจ้ง ให้ใช้ cancelFeedbackNotification() เราขอแนะนำให้คุณใส่ showFeedbackNotification() ใน onCreate() ของกิจกรรมหลัก
Kotlin
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
Firebase.appDistribution.showFeedbackNotification(
// Text providing notice to your testers about collection and
// processing of their feedback data
R.string.additionalFormText,
// The level of interruption for the notification
InterruptionLevel.HIGH)
}
}
Java
public class MainActivity extends AppCompatActivity {
FirebaseAppDistribution firebaseAppDistribution =
FirebaseAppDistribution.getInstance();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
firebaseAppDistribution.showFeedbackNotification(
// Text providing notice to your testers about collection and
// processing of their feedback data
R.string.additionalFormText,
// The level of interruption for the notification
InterruptionLevel.HIGH);
}
}
ตัวเลือกที่ 2: ทริกเกอร์ที่กำหนดเอง
ใช้เมธอด startFeedback() เพื่อเริ่มแสดงความคิดเห็นโดยใช้กลไกที่คุณเลือก ตัวอย่างเช่น หากต้องการให้ผู้ทดสอบแสดงความคิดเห็น คุณอาจเพิ่มรายการเมนู "ส่งความคิดเห็น" ลงในเมนูการทำงานของแอป หรือให้ผู้ทดสอบเขย่าอุปกรณ์หรือถ่ายภาพหน้าจอ
เมื่อคุณทริกเกอร์ความคิดเห็น ให้ระบุข้อความที่จะแสดงต่อผู้ทดสอบก่อนที่ผู้ทดสอบจะส่งความคิดเห็น หากต้องการแจ้งให้ผู้ทดสอบทราบเกี่ยวกับการเก็บรวบรวมและการประมวลผลข้อมูลความคิดเห็นของผู้ทดสอบ คุณสามารถใช้ข้อความนี้เพื่อแจ้งให้ทราบได้
Kotlin
Firebase.appDistribution.startFeedback(R.string.feedbackMessage)
Java
FirebaseAppDistribution.getInstance().startFeedback(R.string.feedbackMessage);
ขั้นตอนที่ 4: สร้างและทดสอบการติดตั้งใช้งาน
การทดสอบในเครื่อง
หากต้องการทดสอบการติดตั้งใช้งานโดยไม่ต้องเผยแพร่แอปก่อน ให้ทำตามขั้นตอนต่อไปนี้
เปิดใช้โหมดนักพัฒนาซอฟต์แวร์ในอุปกรณ์ภายในเครื่องโดยทำดังนี้
adb shell setprop debug.firebase.appdistro.devmode true
สร้างแอปเป็นตัวแปรเวอร์ชันทดลองที่มีไลบรารี App Distribution แบบเต็ม และทดสอบว่าคุณสามารถทริกเกอร์ความคิดเห็นโดยใช้กลไกที่ใช้ในขั้นตอนที่ 3: กำหนดค่าความคิดเห็นในแอปได้หรือไม่ ระบบจะไม่ส่งความคิดเห็นเมื่ออยู่ในโหมดนักพัฒนาซอฟต์แวร์
หลังจากทดสอบแล้ว คุณสามารถปิดใช้โหมดนักพัฒนาซอฟต์แวร์ในอุปกรณ์ได้โดยทำดังนี้
adb shell setprop debug.firebase.appdistro.devmode false
การทดสอบตั้งแต่ต้นจนจบ
หากต้องการทดสอบว่าแอปสามารถส่งความคิดเห็นได้หรือไม่ ให้สร้างแอปเป็นตัวแปรเวอร์ชันทดลองที่มีไลบรารี App Distribution แบบเต็ม และทดสอบการใช้งานโดยทำตามขั้นตอนต่อไปนี้
อัปโหลดแอปรุ่นใหม่ไปยัง App Distribution
จัดจำหน่ายแอปรุ่นต่างๆ ไปยังบัญชีที่คุณมีสิทธิ์เข้าถึง
ดาวน์โหลดแอปผ่านเว็บหรือแอปผู้ทดสอบ Android ของ App Distribution
ทริกเกอร์ความคิดเห็นโดยใช้กลไกที่ใช้ในขั้นตอนที่ 3: กำหนดค่าความคิดเห็นในแอป
ตรวจสอบว่าคุณได้ลงชื่อเข้าใช้ด้วยบัญชีเดียวกับที่ใช้เผยแพร่แอปรุ่นดังกล่าว แล้วส่งความคิดเห็น
ดูความคิดเห็นในการ์ดของรุ่นใหม่ในคอนโซล Firebase
หากต้องการดูวิธีแก้ไขปัญหาที่พบได้ทั่วไป เช่น ผู้ทดสอบไม่สามารถเริ่มแสดงความคิดเห็นในแอป โปรดดูหัวข้อการเปิดใช้ฟีเจอร์การทดสอบด้วย SDK
ขั้นตอนที่ 5: จัดการความคิดเห็นของผู้ทดสอบ
หลังจากเปิดใช้ให้ผู้ทดสอบส่งความคิดเห็นได้แล้ว คุณจะใช้เครื่องมือต่อไปนี้เพื่อตรวจสอบและดำเนินการกับความคิดเห็นดังกล่าวได้
ดูและลบความคิดเห็นในคอนโซล Firebase
คุณสามารถตรวจสอบและลบความคิดเห็นของผู้ใช้ รวมถึงภาพหน้าจอได้โดยเปิดแท็บความคิดเห็นของผู้ทดสอบในส่วนรุ่นที่เฉพาะเจาะจงในคอนโซล Firebase ความคิดเห็นของผู้ใช้จะจัดระเบียบตามรุ่นเพื่อให้คุณยืนยันเวอร์ชันที่ความคิดเห็นนั้นเกี่ยวข้องได้
หลังจากตรวจสอบความคิดเห็นของผู้ใช้แล้ว คุณสามารถลบความคิดเห็นนั้นได้โดยคลิกปุ่มลบความคิดเห็น ระบบจะนำความคิดเห็นที่ลบออกจากรุ่นของคุณ
รับการแจ้งเตือนทางอีเมลสำหรับความคิดเห็นใหม่
หากต้องการทราบความคิดเห็นใหม่ๆ ของผู้ทดสอบในเชิงรุก คุณสามารถรับการแจ้งเตือนทางอีเมลเมื่อผู้ทดสอบส่งความคิดเห็น การแจ้งเตือนทางอีเมลจะมีข้อความความคิดเห็นที่ผู้ทดสอบระบุไว้และลิงก์ไปยังภาพหน้าจอที่ผู้ทดสอบส่งมา
หากต้องการรับการแจ้งเตือนทางอีเมลของ App Distribution โดยใช้กลไกเริ่มต้นนี้ คุณต้องมีสิทธิ์ firebase.projects.update บทบาทต่อไปนี้มีสิทธิ์ที่จำเป็นนี้โดยค่าเริ่มต้น ได้แก่ ผู้ดูแลระบบ Firebase หรือเจ้าของหรือผู้แก้ไขโปรเจ็กต์
โดยค่าเริ่มต้น สมาชิกโปรเจ็กต์ทุกคนที่มีสิทธิ์ที่จำเป็นในการรับการแจ้งเตือนทางอีเมลจะได้รับอีเมลเมื่อมีการส่งรายงานความคิดเห็นใหม่ สมาชิกโปรเจ็กต์สามารถเลือกไม่รับการแจ้งเตือนเหล่านี้ได้เป็นรายบุคคล
หากต้องการปิดใช้การแจ้งเตือนทางอีเมล โปรดดูหัวข้อรับการแจ้งเตือน Firebase
ส่งความคิดเห็นใหม่ไปยังเครื่องมือของบุคคลที่สาม
นอกจากนี้ คุณยังส่งการแจ้งเตือนของ App Distribution ไปยังช่องทางการแจ้งเตือนที่ทีมต้องการได้โดยใช้ Cloud Functions for Firebase ตัวอย่างเช่น คุณสามารถเขียนฟังก์ชันที่บันทึกเหตุการณ์การแจ้งเตือนสำหรับความคิดเห็นใหม่ในแอป และโพสต์ข้อมูลการแจ้งเตือนไปยังบริการของบุคคลที่สาม เช่น Discord, Slack หรือ Jira
หากต้องการตั้งค่าความสามารถในการแจ้งเตือนขั้นสูงโดยใช้ Cloud Functions for Firebase ให้ทำตามขั้นตอนต่อไปนี้
ตั้งค่า Cloud Functions for Firebase ซึ่งรวมถึงงานต่อไปนี้
ดาวน์โหลด Node.js และ npm
ติดตั้งและลงชื่อเข้าใช้ Firebase CLI
เริ่มต้น Cloud Functions for Firebase โดยใช้ Firebase CLI
เขียนและติดตั้งใช้งานฟังก์ชันที่บันทึกเหตุการณ์การแจ้งเตือนความคิดเห็นในแอปจาก App Distribution และจัดการเพย์โหลดของเหตุการณ์ (เช่น โพสต์ข้อมูลการแจ้งเตือนในข้อความบน Discord)
หากต้องการดูตัวอย่างฟังก์ชันที่แสดงวิธีส่งความคิดเห็นใหม่ไปยัง Jira โปรดดูตัวอย่างฟังก์ชันนี้
ดูข้อมูลเกี่ยวกับเหตุการณ์การแจ้งเตือนทั้งหมดที่คุณบันทึกได้ที่เอกสารอ้างอิงสำหรับการแจ้งเตือน App Distribution