Hướng dẫn này mô tả cách bật tính năng phản hồi trong ứng dụng bằng SDK Android (không bắt buộc) Firebase App Distribution để người thử nghiệm có thể gửi ý kiến phản hồi (bao gồm cả ảnh chụp màn hình) trực tiếp trong ứng dụng.
Trước khi bắt đầu
Nếu bạn chưa làm việc này, hãy thêm Firebase vào dự án Android của bạn.
Bước 1: Bật API người thử nghiệm App Distribution
Mở bảng điều khiển Google Cloud rồi chọn dự án Firebase của bạn.
Trong API người thử nghiệm ứng dụng Firebase, hãy nhấp vào Bật.
Bước 2: Thêm App Distribution vào ứng dụng của bạn
SDK Android App Distribution bao gồm 2 thư viện:
firebase-appdistribution-api: Thư viện chỉ có API mà bạn có thể đưa vào tất cả các biến thể bản dựng.firebase-appdistribution: Quá trình triển khai SDK đầy đủ (không bắt buộc).
Thư viện chỉ có API cho phép mã của bạn gọi đến SDK. Các lệnh gọi không có hiệu lực nếu quá trình triển khai SDK đầy đủ không có mặt.
Khai báo phần phụ thuộc cho SDK Android App Distribution trong tệp Gradle mô-đun (cấp ứng dụng) (thường là
<project>/<app-module>/build.gradle.ktshoặc<project>/<app-module>/build.gradle).Để tránh đưa chức năng tự cập nhật của quá trình triển khai SDK đầy đủ vào các bản dựng trên Google Play, hãy xác định các biến thể bản dựng, bao gồm loại bản dựng hoặc hương vị sản phẩm mà bạn sẽ phân phối thông qua App Distribution.
Khai báo phần phụ thuộc cho App Distribution SDK Android trong tệp Gradle mô-đun (cấp ứng dụng) (thường là
app/build.gradle). Chỉ thêm quá trình triển khai SDK đầy đủ vào các biến thể chỉ dành riêng cho quá trình thử nghiệm trước khi phát hành:Kotlin
dependencies { // ADD the API-only library to all variants implementation("com.google.firebase:firebase-appdistribution-api-ktx:16.0.0-beta15") // ADD the full SDK implementation to the "beta" variant only (example) betaImplementation("com.google.firebase:firebase-appdistribution:16.0.0-beta18") }
Java
dependencies { // ADD the API-only library to all variants implementation("com.google.firebase:firebase-appdistribution-api:16.0.0-beta18") // ADD the full SDK implementation to the "beta" variant only (example) betaImplementation("com.google.firebase:firebase-appdistribution:16.0.0-beta18") }
Bước 3: Định cấu hình tính năng phản hồi trong ứng dụng
Để thu thập ý kiến phản hồi từ người thử nghiệm, hãy sử dụng một trong các trình kích hoạt sau để cho phép người thử nghiệm bắt đầu phản hồi:
Trình kích hoạt thông báo tích hợp: SDK Android có thể hiển thị một thông báo hiển thị liên tục mà người thử nghiệm có thể nhấn vào ở bất kỳ đâu trong ứng dụng. Hãy sử dụng trình kích hoạt này nếu bạn muốn bắt đầu nhanh hơn và không cần tuỳ chỉnh cách người thử nghiệm cung cấp ý kiến phản hồi.App Distribution
Trình kích hoạt tuỳ chỉnh: Bạn có thể cung cấp cơ chế kích hoạt riêng, chẳng hạn như nhấn vào một nút hoặc mục trong trình đơn trong ứng dụng hoặc lắc thiết bị.
Khi bạn sử dụng một trong các trình kích hoạt này và người thử nghiệm gửi ý kiến phản hồi, SDK Android sẽ thực hiện các thao tác sau:
Chụp ảnh màn hình hoạt động hiện tại của ứng dụng.
Chạy các lượt kiểm tra để đảm bảo người thử nghiệm đã bật các tính năng thử nghiệm của SDK. Nếu các tính năng thử nghiệm không được bật, SDK Android sẽ nhắc người thử nghiệm đăng nhập vào App Distribution bằng tài khoản Google của họ.
Bắt đầu một hoạt động toàn màn hình cho phép người thử nghiệm viết và gửi ý kiến phản hồi.
Cách 1: Điều kiện kích hoạt thông báo
Sử dụng showFeedbackNotification() để hiển thị một thông báo liên tục hoặc
đang diễn ra
trên thiết bị của người thử nghiệm mà họ có thể nhấn vào để bắt đầu phản hồi.
Khi định cấu hình thông báo, bạn cần cung cấp một số văn bản sẽ
được hiển thị cho người thử nghiệm trước khi họ gửi ý kiến phản hồi và mức độ
gián đoạn cho thông báo (tương ứng với mức độ quan trọng của kênh thông báo). Nếu bạn muốn thông báo cho người thử nghiệm về việc thu thập và xử lý dữ liệu phản hồi của họ, bạn có thể sử dụng văn bản để cung cấp thông báo đó.
Khi bạn sử dụng showFeedbackNotification() và khi ứng dụng chuyển sang nền, thông báo sẽ bị ẩn. Nếu bạn muốn ẩn thông báo một cách rõ ràng, hãy sử dụng cancelFeedbackNotification(). Bạn nên đặt showFeedbackNotification() trong onCreate() của hoạt động chính.
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);
}
}
Cách 2: Điều kiện kích hoạt tuỳ chỉnh
Sử dụng phương thức startFeedback() để bắt đầu phản hồi bằng cơ chế mà bạn chọn. Ví dụ: để kích hoạt phản hồi, bạn có thể muốn thêm mục trong trình đơn "Gửi ý kiến phản hồi" vào trình đơn thao tác của ứng dụng hoặc cho phép người thử nghiệm lắc thiết bị hoặc chụp ảnh màn hình.
Khi bạn kích hoạt phản hồi, hãy cung cấp một số văn bản sẽ được hiển thị cho người thử nghiệm trước khi họ gửi ý kiến phản hồi. Nếu bạn muốn thông báo cho người thử nghiệm về việc thu thập và xử lý dữ liệu phản hồi của họ, bạn có thể sử dụng văn bản này để cung cấp thông báo đó.
Kotlin
Firebase.appDistribution.startFeedback(R.string.feedbackMessage)
Java
FirebaseAppDistribution.getInstance().startFeedback(R.string.feedbackMessage);
Bước 4: Tạo và kiểm thử quá trình triển khai
Kiểm thử cục bộ
Để kiểm thử quá trình triển khai mà không cần phân phối ứng dụng trước, hãy làm theo các bước sau:
Bật chế độ dành cho nhà phát triển trên thiết bị cục bộ:
adb shell setprop debug.firebase.appdistro.devmode true
Tạo bản dựng ứng dụng của bạn dưới dạng một biến thể bản phát hành trước bao gồm các App Distribution thư viện đầy đủ và kiểm thử để đảm bảo bạn có thể kích hoạt phản hồi bằng cơ chế được triển khai trong Bước 3: Định cấu hình tính năng phản hồi trong ứng dụng. Ý kiến phản hồi không được gửi khi ở chế độ dành cho nhà phát triển.
Sau khi kiểm thử, bạn có thể tắt chế độ dành cho nhà phát triển trên thiết bị:
adb shell setprop debug.firebase.appdistro.devmode false
Kiểm thử toàn diện
Để kiểm thử xem ứng dụng của bạn có thể gửi ý kiến phản hồi hay không, hãy tạo bản dựng ứng dụng của bạn dưới dạng một bản phát hành trước bao gồm các thư viện App Distribution đầy đủ và kiểm thử quá trình triển khai theo các bước sau:
Tải bản phát hành ứng dụng mới lên App Distribution.
Phân phối bản phát hành ứng dụng cho một tài khoản mà bạn có quyền truy cập.
Tải ứng dụng xuống thông qua ứng dụng web hoặc ứng dụng Android dành cho người thử nghiệm của App Distribution.
Kích hoạt phản hồi bằng cơ chế được triển khai trong Bước 3: Định cấu hình tính năng phản hồi trong ứng dụng.
Đảm bảo bạn đã đăng nhập bằng chính tài khoản mà bạn đã phân phối bản phát hành ứng dụng và gửi ý kiến phản hồi.
Xem ý kiến phản hồi của bạn trong thẻ của bản phát hành mới trong bảng điều khiển Firebase.
Để tìm hiểu cách giải quyết các vấn đề thường gặp, chẳng hạn như người thử nghiệm không thể bắt đầu phản hồi trong ứng dụng, hãy xem Bật các tính năng thử nghiệm bằng SDK.
Bước 5: Quản lý ý kiến phản hồi của người thử nghiệm
Sau khi cho phép người thử nghiệm gửi ý kiến phản hồi, bạn có thể sử dụng các công cụ sau để xem xét và xử lý ý kiến phản hồi đó:
Xem và xoá ý kiến phản hồi trong bảng điều khiển Firebase
Bạn có thể xem xét và xoá ý kiến phản hồi của người dùng, bao gồm cả ảnh chụp màn hình, bằng cách mở thẻ Ý kiến phản hồi của người thử nghiệm trong một bản phát hành cụ thể trong Firebase bảng điều khiển. Ý kiến phản hồi của người dùng được sắp xếp theo bản phát hành để bạn có thể xác nhận phiên bản mà ý kiến phản hồi áp dụng.
Sau khi xem xét ý kiến phản hồi của người dùng, bạn có thể xoá ý kiến phản hồi đó bằng cách nhấp vào nút Xoá ý kiến phản hồi. Ý kiến phản hồi đã xoá sẽ bị xoá khỏi bản phát hành của bạn.
Nhận thông báo qua email về ý kiến phản hồi mới
Để chủ động tìm hiểu về ý kiến phản hồi mới của người thử nghiệm, bạn có thể nhận thông báo qua email khi người thử nghiệm gửi ý kiến phản hồi. Thông báo qua email bao gồm ý kiến phản hồi bằng văn bản mà người thử nghiệm của bạn đã cung cấp và đường liên kết đến mọi ảnh chụp màn hình mà họ đã gửi.
Để nhận thông báo qua email App Distribution thông qua cơ chế mặc định này, bạn phải có
quyền firebase.projects.update. Theo mặc định, các vai trò sau đây bao gồm quyền bắt buộc này: Quản trị viên Firebase
hoặc Chủ sở hữu hoặc Người chỉnh sửa dự án.
Theo mặc định, mọi thành viên của dự án có quyền cần thiết để nhận thông báo qua email sẽ nhận được email khi một báo cáo phản hồi mới được gửi. Các thành viên của dự án có thể chọn không nhận các thông báo này.
Để tắt thông báo qua email, hãy xem bài viết Nhận thông báo của Firebase.
Gửi ý kiến phản hồi mới đến các công cụ của bên thứ ba
Bạn cũng có thể gửi thông báo App Distribution đến kênh thông báo ưu tiên của nhóm bằng Cloud Functions for Firebase. Ví dụ: bạn có thể viết một hàm ghi lại sự kiện thông báo về ý kiến phản hồi mới trong ứng dụng và đăng thông tin thông báo lên một dịch vụ của bên thứ ba như Discord, Slack hoặc Jira.
Để thiết lập các chức năng thông báo nâng cao bằng Cloud Functions for Firebase, hãy làm theo các bước sau:
Thiết lập Cloud Functions for Firebase, bao gồm các tác vụ sau:
Tải Node.js và npm xuống.
Cài đặt và đăng nhập vào CLI Firebase.
Khởi chạy Cloud Functions for Firebase bằng Firebase CLI.
Viết và triển khai một hàm ghi lại sự kiện thông báo về ý kiến phản hồi trong ứng dụng từ App Distribution và xử lý tải trọng sự kiện (ví dụ: đăng thông tin thông báo trong một tin nhắn trên Discord).
Để xem hàm mẫu cho biết cách gửi ý kiến phản hồi mới đến Jira, hãy tham khảo mẫu này.
Để tìm hiểu về tất cả các sự kiện cảnh báo mà bạn có thể ghi lại, hãy xem tài liệu tham khảo về App Distribution cảnh báo.