इस गाइड में, Unity का इस्तेमाल करके अपने ऐप्लिकेशन में इन-ऐप्लिकेशन समीक्षाएं इंटिग्रेट करने का तरीका बताया गया है. Kotlin या Java, नेटिव कोड या Unreal Engine का इस्तेमाल करने पर, इंटिग्रेशन से जुड़ी अलग-अलग गाइड उपलब्ध हैं.
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 मेन्यू विकल्प बदलाव करें > प्रोजेक्ट सेटिंग > पैकेज मैनेजर चुनकर, पैकेज मैनेजर की सेटिंग खोलें.
Package Manager विंडो में, 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 के मेन्यू विकल्प विंडो > पैकेज मैनेजर को चुनकर, पैकेज मैनेजर मेन्यू खोलें.
मेरी रजिस्ट्री चुनने के लिए, मैनेजर स्कोप ड्रॉप-डाउन सेट करें.
पैकेज की सूची से, Unity के लिए Google Play इंटिग्रिटी प्लग इन पैकेज चुनें और इंस्टॉल करें दबाएं.
GitHub से इंपोर्ट करना
GitHub से
.unitypackage
का सबसे नया वर्शन डाउनलोड करें.Unity मेन्यू विकल्प ऐसेट > पैकेज इंपोर्ट करें > कस्टम पैकेज चुनकर,
.unitypackage
फ़ाइल इंपोर्ट करें और सभी आइटम इंपोर्ट करें.
ReviewManager बनाना
ReviewManager
का एक इंस्टेंस बनाएं, जो आपके ऐप्लिकेशन और Google Play 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();
कॉल पूरा होने पर, एपीआई वह PlayReviewInfo
ऑब्जेक्ट दिखाता है जिसकी ज़रूरत आपके ऐप्लिकेशन को, इन-ऐप्लिकेशन समीक्षा फ़्लो लॉन्च करने के लिए होती है. उदाहरण में, असाइनमेंट को सिंक किए बिना करने के लिए, कोरूटीन में कॉल किया गया है. इससे मुख्य थ्रेड ब्लॉक नहीं होता. कॉल असींक्रोनस तरीके से किया जाता है, इसलिए इसमें कुछ सेकंड लग सकते हैं. इसलिए, आपके ऐप्लिकेशन को उपयोगकर्ता फ़्लो में उस बिंदु पर पहुंचने से पहले कॉल करना चाहिए जहां आपको इन-ऐप्लिकेशन समीक्षा दिखानी है.
इन-ऐप्लिकेशन समीक्षा फ़्लो लॉन्च करना
आपके ऐप्लिकेशन को 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.
अगले चरण
अपने ऐप्लिकेशन के इन-ऐप्लिकेशन समीक्षा फ़्लो की जांच करें, ताकि यह पुष्टि की जा सके कि आपका इंटिग्रेशन सही तरीके से काम कर रहा है या नहीं.