Bài viết này liệt kê các bước thiết lập mà bạn cần thực hiện trước khi có thể bán sản phẩm trong ứng dụng. Ở cấp độ cao, quy trình thiết lập này bao gồm việc tạo một tài khoản nhà phát triển, tạo và định cấu hình các sản phẩm bạn muốn bán cũng như cho phép và định cấu hình các API mà bạn sử dụng để bán và quản lý sản phẩm. Bài viết này cũng mô tả cách định cấu hình Thông báo dành cho nhà phát triển theo thời gian thực để bạn nhận được thông báo bất cứ khi nào trạng thái của sản phẩm thay đổi.
Thiết lập tài khoản Google Play dành cho nhà phát triển
Để phát hành ứng dụng và trò chơi của bạn trên Google Play, hãy sử dụng Google Play Console. Bạn cũng có thể dùng Google Play Console để quản lý các sản phẩm và chế độ cài đặt liên quan đến hoạt động thanh toán.
Để truy cập vào Google Play Console, bạn cần Thiết lập tài khoản Google Play dành cho nhà phát triển.
Nếu muốn bán ứng dụng có tính phí và giao dịch mua hàng trong ứng dụng trên Google Play, bạn cũng cần thiết lập một hồ sơ trong Trung tâm thanh toán của Google rồi liên kết hồ sơ đó với tài khoản Google Play dành cho nhà phát triển của bạn. Để tìm hiểu cách liên kết hồ sơ với tài khoản của bạn hoặc cách kiểm tra xem bạn đã có tài khoản được liên kết với hồ sơ hay chưa, hãy xem phần Liên kết tài khoản Google Play dành cho nhà phát triển với hồ sơ thanh toán của bạn.
Bật các tính năng liên quan đến thanh toán trong Google Play Console
Sau khi thiết lập tài khoản nhà phát triển, bạn phải phát hành một phiên bản ứng dụng bao gồm Thư viện Google Play Billing. Bạn cần thực hiện bước này để bật các tính năng có liên quan đến thanh toán trong Google Play Console, chẳng hạn như thiết lập các sản phẩm bạn muốn bán.
Thêm phần phụ thuộc của thư viện
Để tích hợp hệ thống thanh toán của Google Play, trước tiên hãy thêm phần phụ thuộc vào Thư viện Google Play Billing trong ứng dụng của bạn. Thư viện này cung cấp quyền truy cập vào các API Android dùng để kết nối bạn với Google Play. Từ đó, bạn có thể truy cập thông tin của giao dịch mua, truy vấn để cập nhật về các giao dịch mua, nhắc người dùng thực hiện giao dịch mua mới và nhiều thao tác khác.
Thư viện Google Play Billing hiện có trong kho lưu trữ Maven của Google. Bạn có thể thêm phần phụ thuộc vào tệp build.gradle
của ứng dụng như sau:
Groovy
dependencies { def billing_version = "7.0.0" implementation "com.android.billingclient:billing:$billing_version" }
Kotlin
dependencies { val billing_version = "7.0.0" implementation("com.android.billingclient:billing:$billing_version") }
Nếu bạn đang sử dụng Kotlin, mô-đun KTX của Thư viện Play Billing chứa các phần mở rộng và hỗ trợ coroutine Kotlin sẽ giúp bạn viết mã Kotlin đúng quy ước khi sử dụng hệ thống thanh toán của Google Play. Để đưa các phần mở rộng này vào dự án, hãy thêm phần phụ thuộc sau vào tệp build.gradle
của ứng dụng như sau:
Groovy
dependencies { def billing_version = "7.0.0" implementation "com.android.billingclient:billing-ktx:$billing_version" }
Kotlin
dependencies { val billing_version = "7.0.0" implementation("com.android.billingclient:billing-ktx:$billing_version") }
Các ví dụ về mã Kotlin có trên trang này tận dụng KTX khi có thể.
Tải ứng dụng lên
Sau khi đã thêm thư viện vào, bạn có thể tạo và phát hành ứng dụng. Ở bước này, hãy tạo ứng dụng của bạn rồi phát hành lên bất kỳ kênh nào, kể cả kênh thử nghiệm nội bộ.
Tạo và định cấu hình sản phẩm
Sau khi bật các tính năng của Google Play Billing cho ứng dụng, bạn cần thiết lập để có thể bán các sản phẩm.
Các bước để tạo sản phẩm tính phí một lần và sản phẩm thuê bao theo gói là tương tự nhau. Đối với mỗi sản phẩm, bạn cần cung cấp một mã sản phẩm riêng biệt, tiêu đề, nội dung mô tả và thông tin về giá. Đối với gói thuê bao, bạn sẽ phải cung cấp thêm thông tin chẳng hạn như chọn dùng loại hình tự động gia hạn hay gia hạn trả trước cho gói cơ bản.
Google Play Console cung cấp một giao diện web giúp bạn quản lý các sản phẩm của mình.
Để tạo và thiết lập sản phẩm tính phí một lần, hãy xem phần Tạo sản phẩm được quản lý. Xin lưu ý rằng Google Play Console coi các sản phẩm tính phí một lần là sản phẩm được quản lý.
Để tạo và định cấu hình gói thuê bao, hãy xem phần Tạo gói thuê bao.
Bên cạnh giao diện web, bạn cũng có thể dùng tài nguyên Kiến trúc chuyển trạng thái đại diện (REST) inappproducts
cho sản phẩm trong ứng dụng và tài nguyên Kiến trúc chuyển trạng thái đại diện (REST) monetization.subscriptions
cho sản phẩm thuê bao trong API Nhà phát triển Google Play để quản lý các sản phẩm của mình.
Định cấu hình API Nhà phát triển Google Play
API dành cho nhà phát triển của Google Play là một API giữa các máy chủ dùng để bổ trợ cho Thư viện Google Play Billing trên Android. API này cung cấp những chức năng không có trong Thư viện Google Play Billing, chẳng hạn như xác minh giao dịch mua và hoàn tiền cho người dùng một cách an toàn.
Để tích hợp hệ thống thanh toán của Google Play vào ứng dụng, bạn phải định cấu hình quyền truy cập của API dành cho nhà phát triển của Google Play thông qua Google Play Console. Để được hướng dẫn, hãy xem phần Làm quen với API dành cho Nhà phát triển của Google Play.
Sau khi đã định cấu hình quyền truy cập vào API dành cho Nhà phát triển của Google Play, hãy chắc chắn rằng bạn đã cấp quyền Xem dữ liệu tài chính. Quyền này là cần thiết để truy cập những chức năng liên quan đến thanh toán. Để tìm hiểu về các phương pháp tốt nhất cũng như thông tin về cách định cấu hình quyền, hãy xem phần Thêm tài khoản nhà phát triển cho người dùng và quản lý quyền.
Định cấu hình Thông báo cho nhà phát triển theo thời gian thực
Thông báo cho nhà phát triển theo thời gian thực (RTDN) là một cơ chế để bạn có thể nhận thông báo từ Google mỗi khi có thay đổi về quyền của người dùng trong ứng dụng. RTDN tận dụng Google Cloud Pub/Sub để nhận dữ liệu đã được đẩy đến một URL do bạn đặt hoặc được lấy bằng cách sử dụng thư viện ứng dụng. Những thông báo này cho phép bạn phản ứng nhanh chóng trước những thay đổi về trạng thái của gói thuê bao mà không cần phải lấy API dành cho Nhà phát triển của Google Play. Xin lưu ý rằng việc sử dụng API dành cho Nhà phát triển của Google Play không hiệu quả có thể dẫn đến các hạn chế về hạn mức API.
Cloud Pub/Sub là một dịch vụ nhắn tin theo thời gian thực được quản lý toàn diện mà bạn có thể dùng để gửi và nhận tin nhắn giữa các ứng dụng độc lập. Google Play sử dụng Cloud Pub/Sub để đăng thông báo đẩy về các chủ đề mà bạn đăng ký.
Để nhận thông báo, bạn cần tạo một máy chủ phụ trợ để sử dụng các tin nhắn được gửi đến chủ đề của mình. Sau đó, máy chủ của bạn có thể sử dụng những tin nhắn này bằng cách phản hồi các yêu cầu HTTPS tới một điểm cuối đã đăng ký hoặc bằng cách sử dụng Thư viện ứng dụng Cloud Pub/Sub. Các thư viện này hiện có sẵn bằng nhiều ngôn ngữ. Bạn cũng có thể tìm thêm thông tin trong phần Tạo gói thuê bao Pub/Sub trong chủ đề này.
Xác định giá và hạn mức
Để tìm hiểu thông tin chi tiết về định giá và hạn mức, hãy tham khảo định giá và hạn mức.
Ước tính mức sử dụng dữ liệu
Lượng dữ liệu của thông báo về gói thuê bao là khoảng 1KB dữ liệu cho mỗi yêu cầu. Mỗi lần phát hành và lấy dữ liệu đều cần một lượt yêu cầu riêng (khoảng 2KB dữ liệu) cho mỗi thông báo. Số lượng thông báo mỗi tháng phụ thuộc vào chu kỳ thanh toán và hành vi của người dùng. Bạn sẽ nhận được ít nhất một thông báo cho từng người dùng trong chu kỳ thanh toán.
Thiết lập Cloud Pub/Sub
Để bật Thông báo dành cho nhà phát triển theo thời gian thực, trước tiên bạn phải thiết lập Cloud Pub/Sub bằng cách sử dụng dự án Google Cloud Platform (GCP), sau đó bật thông báo cho ứng dụng.
Để sử dụng Cloud Pub/Sub, bạn phải có một dự án GCP đã bật API Cloud Pub/Sub. Nếu bạn chưa biết rõ về GCP và Cloud Pub/Sub, hãy xem Hướng dẫn nhanh.
Tạo một chủ đề
Để bắt đầu nhận thông báo, bạn phải tạo một chủ đề và Google Play sẽ đăng thông báo về chủ đề này. Để tạo một chủ đề, hãy làm theo hướng dẫn trong phần Tạo chủ đề.
Tạo gói thuê bao Pub/Sub
Để nhận các tin nhắn được đăng lên chủ đề, bạn phải tạo một gói thuê bao Pub/Sub dành cho chủ đề đó. Để tạo gói thuê bao Pub/Sub, hãy làm như sau:
- Đọc Hướng dẫn dành cho người đăng ký Cloud Pub/Sub để xác định xem bạn nên định cấu hình gói thuê bao dưới dạng gói thuê bao đẩy (push subscription) hay gói thuê bao kéo (pull subscription).
- Gói thuê bao đẩy cho phép Cloud Pub/Sub gửi thông báo đến phần phụ trợ bảo mật của bạn bằng cách gửi các yêu cầu HTTPS.
- Gói thuê bao kéo yêu cầu máy chủ phụ trợ bảo mật của bạn bắt đầu gửi các yêu cầu đến máy chủ Cloud Pub/Sub để truy xuất tin nhắn.
- Để tạo gói thuê bao, hãy làm theo hướng dẫn trong phần Thêm gói thuê bao.
Cấp quyền phát hành trên chủ đề của bạn
Cloud Pub/Sub yêu cầu bạn cấp các đặc quyền cho Google Play để phát hành thông báo về chủ đề của bạn.
- Mở Google Cloud Console.
- Chọn dự án của bạn, sau đó nhấp vào mục Pub/Sub trong thanh điều hướng bên trái.
Tìm chủ đề của bạn và mở mục thông tin chi tiết về quyền truy cập.
Thêm tài khoản dịch vụ
google-play-developer-notifications@system.gserviceaccount.com
và cấp cho tài khoản này vai trò Nhà xuất bản Pub/Sub.Nhấp vào Lưu để hoàn tất quá trình thiết lập chủ đề.
Bật thông báo dành cho nhà phát triển theo thời gian thực cho ứng dụng của bạn
Để bật Thông báo dành cho nhà phát triển theo thời gian thực cho ứng dụng của bạn, hãy làm như sau:
- Mở Google Play Console.
- Chọn ứng dụng của bạn.
- Chuyển tới trang Kiếm tiền > Thiết lập tính năng kiếm tiền.
Cuộn đến phần Thông báo dành cho nhà phát triển theo thời gian thực ở đầu trang.
Chọn Bật thông báo theo thời gian thực.
Trong trường Tên chủ đề, hãy nhập tên chủ đề đầy đủ trên Cloud Pub/Sub mà bạn đã định cấu hình trước đó. Tên chủ đề phải có định dạng
projects/{project_id}/topics/{topic_name}
, trong đóproject_id
là giá trị nhận dạng duy nhất cho dự án của bạn vàtopic_name
là tên của chủ đề được tạo trước đó.Nhấp vào Gửi tin nhắn thử nghiệm để gửi tin nhắn thử nghiệm. Việc phát hành thử nghiệm sẽ giúp bạn đảm bảo mọi thứ được thiết lập và định cấu hình đúng cách. Khi quá trình phát hành thử nghiệm thành công, bạn sẽ nhận được một tin nhắn thông báo. Nếu đã đính kèm gói thuê bao theo chủ đề này thì bạn sẽ nhận được tin nhắn thử nghiệm.
Đối với gói thuê bao kéo, hãy chuyển tới trang của gói thuê bao đó trong Cloud Console, nhấp vào Xem tin nhắn rồi tiến hành kéo tin nhắn. Bạn nên xác nhận mọi tin nhắn bạn đã kéo để tránh việc gửi nhiều lần qua Cloud Pub/Sub. Đối với gói thuê bao đẩy, hãy kiểm tra xem tin nhắn thử nghiệm có được gửi đến điểm đẩy cuối hay không. Mã phản hồi thành công sẽ đóng vai trò là tin nhắn xác nhận.
Nếu quá trình phát hành không thành công thì bạn sẽ thấy thông báo lỗi xuất hiện. Hãy đảm bảo tên chủ đề là chính xác và tài khoản dịch vụ
google-play-developer-notifications@system.gserviceaccount.com
có quyền truy cập Nhà xuất bản Pub/Sub vào chủ đề đó.Chọn loại thông báo bạn muốn nhận.
- Nhận thông báo về các gói thuê bao và tất cả các giao dịch mua vô hiệu – nhận thông báo theo thời gian thực dành cho nhà phát triển liên quan đến các gói thuê bao và các giao dịch mua vô hiệu. Bạn sẽ không nhận được thông báo cho các giao dịch mua sản phẩm tính phí một lần.
- Nhận tất cả thông báo về các gói thuê bao và sản phẩm tính phí một lần – nhận thông báo cho tất cả các gói thuê bao và các sự kiện mua hàng vô hiệu. Bạn cũng sẽ nhận được các sự kiện mua sản phẩm tính phí một lần, chẳng hạn như
ONE_TIME_PRODUCT_PURCHASED
vàONE_TIME_PRODUCT_CANCELED
. Hãy xem phần Vòng đời giao dịch mua hàng một lần để tìm hiểu thêm về các sự kiện mua hàng này.
Nhấp vào Lưu thay đổi.
Xác minh cấu hình của bạn
Để nhận Thông báo dành cho nhà phát triển theo thời gian thực, bạn nên tạo một máy chủ phụ trợ bảo mật để sử dụng những tin nhắn gửi đến chủ đề Cloud Pub/Sub của mình.
Bạn có thể kiểm tra cấu hình của mình bằng cách sử dụng nút Gửi tin nhắn thử nghiệm trong Google Play Console như đã mô tả ở phần trên. Nếu chưa định cấu hình máy chủ phụ trợ để sử dụng thông báo, bạn có thể dùng công cụ dòng lệnh gcloud
để xác minh cấu hình. Để xem hướng dẫn về cách xử lý tin nhắn bằng gcloud
, hãy xem mục Kéo tin nhắn từ gói thuê bao.