שילוב ביקורות בתוך האפליקציה (Unity)

במדריך הזה מוסבר איך לשלב ביקורות בתוך האפליקציה באמצעות Unity. יש מדריכי שילוב נפרדים אם אתם משתמשים ב-Kotlin או Java או קוד מקורי.

סקירה כללית על Unity SDK

Play In-App Review API הוא חלק מ-Play Core משפחת ה-SDK. ה-API של Unity מציעה ReviewManager לכיתה כדי לבקש ולהפעיל את התהליך באמצעות RequestReviewFlow ו-LaunchReviewFlow שיטות. לאחר שליחת בקשה, האפליקציה יכולה לבדוק את סטטוס הבקשה באמצעות ReviewErrorCode.

הגדרת סביבת הפיתוח

הורדת הגרסה האחרונה של פלאגין Unity של Play In-App Review מחבילות של 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 שנדרש לאפליקציה כדי להפעיל את תהליך הבדיקה בתוך האפליקציה. בדוגמה, מתבצעת קריאה בתוך קורוטין כדי לבצע את הפעולה האסינכרונית (הפעולה הזו לא חוסמת את ה-thread הראשי). כי שהשיחה מתבצעת באופן אסינכרוני, היא עשויה להימשך כמה שניות, כך האפליקציה צריכה לבצע את הקריאה לפני שהיא מגיעה לנקודה שבו רוצים להציג את הביקורת בתוך האפליקציה.

הפעלת תהליך הבדיקה בתוך האפליקציה

אחרי שהאפליקציה מקבלת את 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.

השלבים הבאים

בודקים את תהליך הבדיקה בתוך האפליקציה כדי לוודא שהשילוב פועל כראוי.