Reminder: By Aug 31, 2025, all new apps and updates to existing apps must use Billing Library version 7 or newer. If you need more time to update your app, you can request an extension until Nov 1, 2025. Learn about Play Billing Library version deprecation.
เมื่อผสานรวมแอปกับ Play Billing Library การทดสอบขั้นตอน BillingResponseCode ทั้งหมดอาจทำได้ยาก เนื่องจากคุณไม่สามารถควบคุมการสื่อสารระหว่าง Play Store กับแบ็กเอนด์ของ Play ได้
ฟีเจอร์เครื่องจำลองการตอบกลับในแอปห้องทดลองการเรียกเก็บเงินของ Play ช่วยให้คุณ
กำหนดค่าการตอบกลับรหัสข้อผิดพลาดสำหรับ Play Billing Library เพื่อทดสอบองค์ประกอบที่ซับซ้อนต่างๆ
สถานการณ์ข้อผิดพลาด
เปิดใช้การทดสอบการลบล้างการเรียกเก็บเงินสำหรับไลบรารี Play Billing
หากต้องการเปิดใช้การสื่อสารระหว่างเครื่องจำลองการตอบกลับกับแอปของคุณ
คุณต้องเปิดใช้การทดสอบการลบล้างการเรียกเก็บเงินสำหรับ Play Billing Library
จากภายในแอป โดยเพิ่มแท็กข้อมูลเมตาต่อไปนี้ลงในแท็ก
AndroidManifest.xml ไฟล์
หากต้องการจำลองข้อผิดพลาดของ Play Billing Library ก่อนอื่นให้กำหนดค่ารหัสคำตอบในแอป Play Billing Lab แล้วทดสอบแอป
กำหนดค่าโค้ดตอบกลับ
ในแอป Play Billing Lab ให้ลงชื่อเข้าใช้ด้วยบัญชีผู้ทดสอบใบอนุญาตสำหรับแอปของคุณ ซึ่งจะแสดงหน้าแดชบอร์ดของ Play Billing Lab รวมถึงการ์ดเครื่องจำลองการตอบกลับ
เมื่อได้รับข้อความแจ้ง ให้อนุญาตการแจ้งเตือนจาก Play Billing Lab ดูสถานะการเชื่อมต่อของแอป
เปิดใช้สวิตช์จำลองคำตอบของ Play Billing Library หากยังไม่ได้เปิดใช้
รูปที่ 2 จำลองสวิตช์คำตอบของ Play Billing Library
เลือกรหัสการตอบกลับสำหรับ Play Billing Library API ที่ต้องการทดสอบ
ระบบจะบันทึกรายการที่คุณเลือกโดยอัตโนมัติ และโปรแกรมจำลองการตอบกลับจะพร้อมส่งรหัสการตอบกลับที่เลือกไปยังแอปของคุณ
ทดสอบการจัดการข้อผิดพลาดของแอป
เปิดแอป
หากอนุญาตการแจ้งเตือนจาก Play Billing Lab คุณจะเห็นไอคอนการแจ้งเตือนของ Play Billing Lab ในแถบสถานะของอุปกรณ์ ซึ่งบ่งบอกว่าเชื่อมต่อกับเครื่องจำลองการตอบกลับเรียบร้อยแล้ว
รูปที่ 3 ไอคอน Play Billing Lab ที่แสดงการเชื่อมต่อสําเร็จ
ทริกเกอร์เมธอด Play Billing Library API ที่ต้องการทดสอบ ตัวอย่างเช่น
หากต้องการทดสอบ launchBillingFlow ให้เริ่มการซื้อในแอป
[[["เข้าใจง่าย","easyToUnderstand","thumb-up"],["แก้ปัญหาของฉันได้","solvedMyProblem","thumb-up"],["อื่นๆ","otherUp","thumb-up"]],[["ไม่มีข้อมูลที่ฉันต้องการ","missingTheInformationINeed","thumb-down"],["ซับซ้อนเกินไป/มีหลายขั้นตอนมากเกินไป","tooComplicatedTooManySteps","thumb-down"],["ล้าสมัย","outOfDate","thumb-down"],["ปัญหาเกี่ยวกับการแปล","translationIssue","thumb-down"],["ตัวอย่าง/ปัญหาเกี่ยวกับโค้ด","samplesCodeIssue","thumb-down"],["อื่นๆ","otherDown","thumb-down"]],["อัปเดตล่าสุด 2025-07-27 UTC"],[],[],null,["# Test BillingResult response codes\n\nThe Play Billing Library returns a [`BillingResult`](/reference/com/android/billingclient/api/BillingResult) response to let you\nknow the outcome of an action that was triggered. For more\ninformation, see [handling `BillingResult` response codes](/google/play/billing/errors). Before you\ndeploy your app to the production environment, you can test your app's various\nresponse flows by using the Response Simulator.\n\nResponse Simulator\n------------------\n\nWhen you integrate your app with the Play Billing Library, it can be difficult\nto test all of the [`BillingResponseCode`](/reference/com/android/billingclient/api/BillingClient.BillingResponseCode) flows, because you don't have much\ncontrol over the communication between the Play Store and Play's backend.\nThe Response Simulator feature in the [Play Billing Lab](https://play.google.com/store/apps/details?id=com.google.android.apps.play.billingtestcompanion) app lets you\nconfigure error code responses for the Play Billing Library to test various complex\nerror scenarios.\n\n### Enable billing overrides testing for the Play Billing Library\n\n| **Note:** Before testing, ensure that your app is using [Play Billing Library](/google/play/billing/integrate#dependency) version 7.1.1 or later.\n\nTo enable communication between the Response Simulator and your app,\nyou must enable billing overrides testing for the Play Billing Library\nfrom within your app. To do this, add the following metadata tags to your app's\n`AndroidManifest.xml` file. \n\n```scdoc\n\u003cmanifest ... \u003e\n \u003capplication ... \u003e\n ...\n \u003cmeta-data\n android:name=\"com.google.android.play.largest_release_audience.NONPRODUCTION\"\n android:value=\"\" /\u003e\n \u003cmeta-data\n android:name=\"com.google.android.play.billingclient.enableBillingOverridesTesting\"\n android:value=\"true\" /\u003e\n \u003c/application\u003e\n\u003c/manifest\u003e\n```\n| **Note:** Even though adding only the `enableBillingOverridesTesting` tag and setting it to `true` is sufficient to enable billing overrides testing for your app, it's recommended that you also add the `NONPRODUCTION` tag. The `NONPRODUCTION` tag prevents accidental deployment of your app to the production environment with billing overrides testing enabled.\n\nWhen you deploy your app to the production environment, you should either\nuse a separate `AndroidManifest.xml` file that doesn't include these\nmetadata tags or ensure that you've removed these tags from the\n`AndroidManifest.xml` file.\n\n### Simulate Play Billing Library errors\n\nTo simulate Play Billing Library errors, first, configure the response codes\nin the [Play Billing Lab](https://play.google.com/store/apps/details?id=com.google.android.apps.play.billingtestcompanion) app, and then test your app.\n\n#### Configure a response code\n\n1. In the Play Billing Lab app, sign in with a [license tester](/google/play/billing/test#license-testers) account for your app.\n This displays the Play Billing Lab **Dashboard** including\n the **Response Simulator** card.\n\n **Figure 1.** Response Simulator card.\n2. Click **Manage** on the Response Simulator card.\n This shows the **Response Simulator** screen.\n\n3. When prompted, allow notifications from Play Billing Lab to see the connection status of your app.\n\n4. Enable the **Simulate Play Billing Library responses** switch, if it isn't\n already enabled.\n\n **Figure 2.** Simulate Play Billing Library responses switch.\n5. Select a response code for the Play Billing Library APIs that you want\n to test.\n Your selections are automatically saved, and the Response Simulator\n is ready to send the selected response codes to your app.\n\n#### Test your app's error handling\n\n| **Note:** When testing using the Response Simulator, ensure that you first open Play Billing Lab, and then open your app. Opening your app before opening Play Billing Lab may result in issues connecting to the Response Simulator.\n\n1. Open your app.\n\n - If you have allowed notifications from Play Billing Lab, you will see the Play Billing Lab notification icon in your device's status bar which indicates a successful connection to the Response Simulator.\n\n **Figure 3.** Play Billing Lab icon indicating successful connection.\n2. Trigger the Play Billing Library API method you want to test. For example,\n if you want to test the `launchBillingFlow`, initiate an in-app purchase\n flow."]]