คู่มือนี้อธิบายวิธีผสานรวมรีวิวในแอปไว้ในแอปโดยใช้ Unity เรามีคู่มือการผสานรวมแยกต่างหากสำหรับหากคุณใช้ Kotlin หรือ Java หรือ โค้ดเนทีฟ
ภาพรวมของ Unity SDK
Play In-App Review API เป็นส่วนหนึ่งของ Play Core
SDK API สำหรับ
Unity ขอเสนอ ReviewManager
เพื่อขอและเปิดขั้นตอนโดยใช้ RequestReviewFlow
และ LaunchReviewFlow
หลังจากส่งคำขอแล้ว แอปจะตรวจสอบสถานะคำขอได้
ด้วย ReviewErrorCode
ตั้งค่าสภาพแวดล้อมในการพัฒนาซอฟต์แวร์
ดาวน์โหลดปลั๊กอิน Play In-App Review Unity รุ่นล่าสุดจากแพ็กเกจ Google สำหรับ Unity
สร้างเครื่องมือจัดการรีวิว
สร้างอินสแตนซ์ของ ReviewManager
ที่จัดการการสื่อสารระหว่างแอปของคุณกับ API
// Create instance of ReviewManager
private ReviewManager _reviewManager;
// ...
_reviewManager = new ReviewManager();
ขอออบเจ็กต์ ReviewInfo
ทำตามคำแนะนำว่าควรขอในแอปเมื่อใด
ความเห็น เพื่อพิจารณาจุดที่ดี
ในกระบวนการของผู้ใช้ของแอปเพื่อแจ้งให้ผู้ใช้ตรวจสอบ (เช่น หลังจาก
ผู้ใช้ปิดหน้าจอสรุปเมื่อสิ้นสุดด่านในเกม) เมื่อ
ปิดจุดใดจุดหนึ่งเหล่านี้ด้วยการใช้ ReviewManager
อินสแตนซ์เพื่อสร้างการดำเนินการแบบไม่พร้อมกัน ดังที่แสดงในตัวอย่างต่อไปนี้
var requestFlowOperation = _reviewManager.RequestReviewFlow();
yield return requestFlowOperation;
if (requestFlowOperation.Error != ReviewErrorCode.NoError)
{
// Log error. For example, using requestFlowOperation.Error.ToString().
yield break;
}
_playReviewInfo = requestFlowOperation.GetResult();
หากการเรียกใช้สำเร็จ API จะแสดงผล PlayReviewInfo
ที่แอปของคุณต้องใช้ในการเปิดขั้นตอนการตรวจสอบในแอป ในตัวอย่างนี้ พารามิเตอร์
เกิดขึ้นภายในโครูทีน
เพื่อดําเนินการแบบอะซิงโครนัส (จะไม่บล็อกเทรดหลัก) เพราะ
ระบบจะทำการเรียกไม่พร้อมกัน ซึ่งอาจใช้เวลา 2-3 วินาที
แอปของคุณควรโทรออกก่อนที่แอปของคุณจะถึงจุดที่ผู้ใช้
ขั้นตอนที่คุณต้องการแสดงรีวิวในแอป
เปิดขั้นตอนการตรวจสอบในแอป
หลังจากที่แอปได้รับ PlayReviewInfo
เช่น สามารถเปิดขั้นตอนการตรวจสอบในแอปได้ โปรดทราบว่าPlayReviewInfo
ใช้งานได้ในระยะเวลาที่จำกัดเท่านั้น แอปของคุณจึงไม่ควรรอ
ใช้เวลานานเกินไปก่อนเปิดตัวโฟลว์
var launchFlowOperation = _reviewManager.LaunchReviewFlow(_playReviewInfo);
yield return launchFlowOperation;
_playReviewInfo = null; // Reset the object
if (launchFlowOperation.Error != ReviewErrorCode.NoError)
{
// Log error. For example, using requestFlowOperation.Error.ToString().
yield break;
}
// The flow has finished. The API does not indicate whether the user
// reviewed or not, or even whether the review dialog was shown. Thus, no
// matter the result, we continue our app flow.
ขั้นตอนถัดไป
ทดสอบขั้นตอนการตรวจสอบในแอปเพื่อ ตรวจสอบว่าการผสานรวมทำงานได้อย่างถูกต้อง