इस गाइड में, Unity का इस्तेमाल करके अपने ऐप्लिकेशन में इन-ऐप्लिकेशन समीक्षाओं को इंटिग्रेट करने का तरीका बताया गया है. अगर Kotlin या Java या नेटिव कोड का इस्तेमाल किया जा रहा है, तो इंटिग्रेशन के लिए अलग-अलग गाइड उपलब्ध हैं.
Unity SDK टूल के बारे में खास जानकारी
Play In-App Review API, Play Core SDK टूल फ़ैमिली का हिस्सा है. Unity के लिए एपीआई, RequestReviewFlow
और LaunchReviewFlow
तरीकों का इस्तेमाल करके, फ़्लो का अनुरोध करने और उसे लॉन्च करने के लिए ReviewManager
क्लास उपलब्ध कराता है. अनुरोध करने के बाद, आपका ऐप्लिकेशन ReviewErrorCode
का इस्तेमाल करके, अनुरोध की स्थिति देख सकता है.
डेवलपमेंट एनवायरमेंट सेट अप करना
OpenUPM-CLI
अगर आपने OpenUPM CLI इंस्टॉल किया है, तो इस कमांड का इस्तेमाल करके OpenUPM रजिस्ट्री इंस्टॉल की जा सकती है:
openupm add com.google.play.review
OpenUPM
Unity मेन्यू विकल्प बदलाव करें > प्रोजेक्ट सेटिंग > पैकेज मैनेजर चुनकर, पैकेज मैनेजर की सेटिंग खोलें.
पैकेज मैनेजर विंडो में, OpenUPM को स्कोप वाली रजिस्ट्री के तौर पर जोड़ें:
Name: package.openupm.com URL: https://package.openupm.com Scopes: com.google.external-dependency-manager com.google.play.common com.google.play.core com.google.play.review
यूनिटी मेन्यू में विंडो > पैकेज मैनेजर चुनकर, पैकेज मैनेजर मेन्यू खोलें.
मेरी रजिस्ट्री चुनने के लिए, मैनेजर के दायरे का ड्रॉप-डाउन सेट करें.
पैकेज की सूची से, Unity के लिए Google Play इंटिग्रिटी प्लगिन पैकेज चुनें और इंस्टॉल करें दबाएं.
GitHub से इंपोर्ट करना
GitHub से
.unitypackage
की सबसे नई रिलीज़ डाउनलोड करें..unitypackage
फ़ाइल को इंपोर्ट करने के लिए, यूनिटी मेन्यू का विकल्प चुनें ऐसेट > पैकेज इंपोर्ट करें > कस्टम पैकेज और सभी आइटम इंपोर्ट करें.
ReviewManager बनाना
ReviewManager
का एक इंस्टेंस बनाएं, जो आपके ऐप्लिकेशन और एपीआई के बीच कम्यूनिकेशन मैनेज करता है.
// 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();
कॉल पूरा होने पर, एपीआई वह PlayReviewInfo
OBJECT दिखाता है जिसकी ज़रूरत आपके ऐप्लिकेशन को, इन-ऐप्लिकेशन समीक्षा फ़्लो लॉन्च करने के लिए होती है. उदाहरण में, असाइनमेंट को सिंक किए बिना करने के लिए, कोरूटीन में कॉल किया गया है. इससे मुख्य थ्रेड ब्लॉक नहीं होता. कॉल असींक्रोनस तरीके से किया जाता है, इसलिए इसमें कुछ सेकंड लग सकते हैं. इसलिए, आपके ऐप्लिकेशन को उपयोगकर्ता फ़्लो में उस बिंदु पर पहुंचने से पहले कॉल करना चाहिए जहां आपको इन-ऐप्लिकेशन समीक्षा दिखानी है.
इन-ऐप्लिकेशन समीक्षा फ़्लो लॉन्च करना
आपके ऐप्लिकेशन को 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.
अगले चरण
अपने ऐप्लिकेशन के इन-ऐप्लिकेशन समीक्षा फ़्लो की जांच करें, ताकि यह पुष्टि की जा सके कि आपका इंटिग्रेशन सही तरीके से काम कर रहा है.