इस गाइड में, 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.reviewOpenUPM
Unity मेन्यू में जाकर, पैकेज मैनेजर की सेटिंग विकल्प चुनकर Edit > Project Settings > 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.reviewUnity मेन्यू में जाकर, Window > Package Manager विकल्प चुनकर, पैकेज मैनेजर का मेन्यू खोलें.
मैनेजर स्कोप ड्रॉप-डाउन को सेट करके, मेरी रजिस्ट्री चुनें.
पैकेज की सूची से, Unity के लिए Google Play Integrity प्लगिन पैकेज चुनें और इंस्टॉल करें दबाएं.
GitHub से इंपोर्ट करना
GitHub से
.unitypackageका सबसे नया वर्शन डाउनलोड करें..unitypackageफ़ाइल को इंपोर्ट करने के लिए, Unity मेन्यू का विकल्प चुनें ऐसेट > पैकेज इंपोर्ट करें > कस्टम पैकेज और सभी आइटम इंपोर्ट करें.
ReviewManager बनाना
ReviewManager का एक इंस्टेंस बनाएं, जो आपके ऐप्लिकेशन और Google Play API के बीच होने वाले कम्यूनिकेशन को मैनेज करता है.
using Google.Play.Review;
// 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 launchFlowOperation.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.
अगले चरण
अपने ऐप्लिकेशन के इन-ऐप्लिकेशन समीक्षा फ़्लो की जांच करें, ताकि यह पुष्टि की जा सके कि आपका इंटिग्रेशन सही तरीके से काम कर रहा है.