คู่มือนี้อธิบายวิธีเปิดใช้ความคิดเห็นในแอปโดยใช้ Firebase App Distribution Android SDK เพื่อให้ผู้ทดสอบส่งความคิดเห็น (รวมถึงภาพหน้าจอ) ในแอปได้โดยตรง
ก่อนเริ่มต้น
เพิ่ม Firebase ลงในโปรเจ็กต์ Android หากยังไม่ได้ทำ
ขั้นตอนที่ 1: เปิดใช้ App Distribution Tester API
เปิดคอนโซล Google Cloud แล้วเลือกโปรเจ็กต์ Firebase
คลิกเปิดใช้ในส่วน Firebase App Testers API
ขั้นตอนที่ 2: เพิ่ม App Distribution ลงในแอป
App Distribution Android SDK ประกอบด้วยไลบรารี 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 สำหรับ App Distribution Android SDK ในไฟล์ Gradle ของโมดูล (ระดับแอป) (โดยทั่วไปจะเป็น
app/build.gradle
) เพิ่มการใช้งาน SDK เต็มรูปแบบลงในตัวแปรที่มีไว้สำหรับการทดสอบรุ่นทดลองโดยเฉพาะเท่านั้นKotlin+KTX
dependencies { // ADD the API-only library to all variants implementation("com.google.firebase:firebase-appdistribution-api-ktx:16.0.0-beta13") // ADD the full SDK implementation to the "beta" variant only (example) betaImplementation("com.google.firebase:firebase-appdistribution:16.0.0-beta13") }
Java
dependencies { // ADD the API-only library to all variants implementation("com.google.firebase:firebase-appdistribution-api:16.0.0-beta13") // ADD the full SDK implementation to the "beta" variant only (example) betaImplementation("com.google.firebase:firebase-appdistribution:16.0.0-beta13") }
ขั้นตอนที่ 3: กำหนดค่าความคิดเห็นในแอป
หากต้องการรวบรวมความคิดเห็นจากผู้ทดสอบ ให้ใช้ทริกเกอร์อย่างใดอย่างหนึ่งต่อไปนี้เพื่อให้ผู้ทดสอบเริ่มแสดงความคิดเห็น
ทริกเกอร์การแจ้งเตือนในตัว: Android SDK สำหรับ App Distribution สามารถแสดงการแจ้งเตือนแบบต่อเนื่องซึ่งผู้ทดสอบแตะได้จากทุกที่ในแอป ใช้ทริกเกอร์นี้หากต้องการเริ่มต้นใช้งานให้เร็วขึ้นและไม่จำเป็นต้องปรับแต่งวิธีที่ผู้ทดสอบแสดงความคิดเห็น
ทริกเกอร์ที่กำหนดเอง: คุณระบุกลไกทริกเกอร์ของตัวเองได้ เช่น การแตะปุ่มหรือรายการในเมนูในแอปหรือการเขย่าอุปกรณ์
เมื่อคุณใช้ทริกเกอร์ตัวใดตัวหนึ่งเหล่านี้และผู้ทดสอบส่งความคิดเห็น Android SDK จะดำเนินการต่อไปนี้
จับภาพหน้าจอที่แสดงกิจกรรมในปัจจุบันของแอป
ดำเนินการตรวจสอบเพื่อให้มั่นใจว่าผู้ทดสอบได้เปิดใช้ฟีเจอร์การทดสอบของ SDK แล้ว หากไม่ได้เปิดใช้ฟีเจอร์การทดสอบ Android SDK จะแจ้งให้ผู้ทดสอบลงชื่อเข้าใช้ App Distribution ด้วยบัญชี Google
เริ่มกิจกรรมแบบเต็มหน้าจอที่ให้ผู้ทดสอบเขียนและส่งความคิดเห็นได้
ตัวเลือกที่ 1: ทริกเกอร์การแจ้งเตือน
ใช้ showFeedbackNotification()
เพื่อแสดงการแจ้งเตือนที่ต่อเนื่องหรือต่อเนื่องในอุปกรณ์ของผู้ทดสอบ ซึ่งผู้ทดสอบแตะเพื่อเริ่มความคิดเห็นได้
เมื่อกำหนดค่าการแจ้งเตือน คุณจะต้องระบุข้อความที่จะแสดงต่อผู้ทดสอบก่อนส่งความคิดเห็น และระดับการขัดจังหวะการแจ้งเตือน (ตามความสำคัญของช่องทางการแจ้งเตือน) หากต้องการแจ้งให้ผู้ทดสอบทราบเกี่ยวกับการเก็บรวบรวมและประมวลผลข้อมูลความคิดเห็น คุณจะใช้ข้อความเพื่อส่งการแจ้งเตือนดังกล่าวได้
เมื่อคุณใช้ showFeedbackNotification()
และเมื่อแอปไปยังพื้นหลัง ระบบจะซ่อนการแจ้งเตือนไว้ หากต้องการซ่อนการแจ้งเตือนอย่างชัดแจ้ง ให้ใช้ cancelFeedbackNotification()
เราขอแนะนำให้คุณใส่ showFeedbackNotification()
ใน onCreate()
ของกิจกรรมหลัก
Kotlin+KTX
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+KTX
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
เผยแพร่แอปรุ่นไปยังบัญชีที่คุณมีสิทธิ์เข้าถึง
ดาวน์โหลดแอปผ่านเว็บของ App Distribution หรือแอปสำหรับทดสอบ Android
ทริกเกอร์ความคิดเห็นโดยใช้กลไกที่ใช้ในขั้นตอนที่ 3: กำหนดค่าความคิดเห็นในแอป
ตรวจดูว่าคุณลงชื่อเข้าใช้ด้วยบัญชีเดียวกับที่เผยแพร่แอปรุ่นดังกล่าว และส่งความคิดเห็น
ดูความคิดเห็นของคุณในการ์ดรุ่นใหม่ในคอนโซล Firebase
หากต้องการดูวิธีแก้ปัญหาที่พบได้ทั่วไป เช่น ผู้ทดสอบเริ่มแสดงความคิดเห็นในแอปไม่ได้ โปรดดูการเปิดใช้ฟีเจอร์การทดสอบด้วย SDK
ขั้นตอนที่ 5: จัดการความคิดเห็นของผู้ทดสอบ
หลังจากที่อนุญาตให้ผู้ทดสอบส่งความคิดเห็นแล้ว คุณสามารถใช้เครื่องมือต่อไปนี้เพื่อตรวจสอบและดำเนินการกับความคิดเห็นนั้นได้
ดูและลบความคิดเห็นในคอนโซล Firebase
คุณสามารถตรวจสอบและลบความคิดเห็นจากผู้ใช้รวมถึงภาพหน้าจอได้โดยการเปิดแท็บความคิดเห็นของผู้ทดสอบภายใต้รุ่นที่เจาะจงในคอนโซล Firebase ความคิดเห็นของผู้ใช้จะจัดเรียงตามรุ่นเพื่อให้คุณยืนยันเวอร์ชันที่ต้องการใช้ความคิดเห็นได้
หลังจากตรวจสอบความคิดเห็นของผู้ใช้แล้ว คุณสามารถลบความคิดเห็นนั้นได้โดยคลิกปุ่มลบความคิดเห็น ระบบจะนำความคิดเห็นที่ลบ ออกจากรุ่นของคุณ
รับการแจ้งเตือนทางอีเมลเมื่อมีความคิดเห็นใหม่
หากต้องการเรียนรู้เกี่ยวกับความคิดเห็นใหม่ๆ ของผู้ทดสอบในเชิงรุก คุณรับการแจ้งเตือนทางอีเมลเมื่อผู้ทดสอบส่งความคิดเห็นได้ การแจ้งเตือนทางอีเมลจะมีความคิดเห็นเป็นลายลักษณ์อักษรที่ผู้ทดสอบได้ให้ไว้และลิงก์ไปยังภาพหน้าจอที่ส่งเข้ามา
หากต้องการรับการแจ้งเตือนทางอีเมลของ App Distribution ผ่านกลไกเริ่มต้นนี้ คุณต้องมีสิทธิ์ firebase.projects.update
บทบาทต่อไปนี้มีสิทธิ์ที่จำเป็นโดยค่าเริ่มต้น ซึ่งได้แก่ ผู้ดูแลระบบ Firebase หรือเจ้าของหรือผู้แก้ไขโปรเจ็กต์
โดยค่าเริ่มต้น สมาชิกโปรเจ็กต์ทุกคนที่มีสิทธิ์ที่จำเป็นในการรับการแจ้งเตือนทางอีเมลจะได้รับอีเมลเมื่อมีการส่งรายงานความคิดเห็นใหม่ สมาชิกโครงการสามารถเลือกไม่รับการแจ้งเตือนเหล่านี้ได้
หากต้องการปิดการแจ้งเตือนทางอีเมล โปรดดูรับการแจ้งเตือน Firebase
ส่งความคิดเห็นใหม่ไปยังเครื่องมือของบุคคลที่สาม
นอกจากนี้ คุณยังส่งการแจ้งเตือน App Distribution ไปยังช่องทางการแจ้งเตือนที่ทีมต้องการโดยใช้ Cloud Functions for Firebase ได้ด้วย เช่น เขียนฟังก์ชันที่บันทึกเหตุการณ์การแจ้งเตือนเมื่อมีความคิดเห็นใหม่ในแอป และโพสต์ข้อมูลการแจ้งเตือนไปยังบริการของบุคคลที่สาม เช่น Discord, Slack หรือ Jira
หากต้องการตั้งค่าความสามารถในการแจ้งเตือนขั้นสูงโดยใช้ฟังก์ชันระบบคลาวด์สำหรับ Firebase ให้ทำตามขั้นตอนต่อไปนี้
ตั้งค่า Cloud Functions สำหรับ Firebase ซึ่งมีงานต่อไปนี้
ดาวน์โหลด Node.js และ npm
ติดตั้งและลงชื่อเข้าใช้ Firebase CLI
เริ่มต้น Cloud Functions for Firebase โดยใช้ Firebase CLI
เขียนและทำให้ฟังก์ชันใช้งานได้ที่บันทึกเหตุการณ์การแจ้งเตือนความคิดเห็นในแอปจาก App Distribution และจัดการเปย์โหลดของเหตุการณ์ (เช่น โพสต์ข้อมูลการแจ้งเตือนในข้อความใน Discord)
หากต้องการดูฟังก์ชันตัวอย่างที่แสดงวิธีส่งความคิดเห็นใหม่ไปยัง Jira โปรดไปที่ตัวอย่างนี้
หากต้องการดูข้อมูลเกี่ยวกับเหตุการณ์การแจ้งเตือนทั้งหมดที่คุณบันทึกได้ โปรดดูเอกสารอ้างอิงสำหรับการแจ้งเตือนของ App Distribution