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

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

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

ספריית הביקורות בתוך האפליקציה של Play היא חלק מספריות הליבה של Google Play. צריך לכלול את התלות הבאה של Gradle כדי לשלב את Play In-App בודקים את הספרייה.

Groovy

// In your app’s build.gradle file:
...
dependencies {
    // This dependency is downloaded from the Google’s Maven repository.
    // So, make sure you also include that repository in your project's build.gradle file.
    implementation 'com.google.android.play:review:2.0.1'

    // For Kotlin users also add the Kotlin extensions library for Play In-App Review:
    implementation 'com.google.android.play:review-ktx:2.0.1'
    ...
}

Kotlin

// In your app’s build.gradle.kts file:
...
dependencies {
    // This dependency is downloaded from the Google’s Maven repository.
    // So, make sure you also include that repository in your project's build.gradle file.
    implementation("com.google.android.play:review:2.0.1")

    // For Kotlin users also import the Kotlin extensions library for Play In-App Review:
    implementation("com.google.android.play:review-ktx:2.0.1")
    ...
}

יצירת מנהל הביקורות

ReviewManager הוא הממשק שמאפשר לאפליקציה להתחיל תהליך בדיקה בתוך האפליקציה. אפשר לקבל אותה עד יוצרים מכונה באמצעות ReviewManagerFactory.

Kotlin

val manager = ReviewManagerFactory.create(context)

Java

ReviewManager manager = ReviewManagerFactory.create(context)

בקשה לאובייקט ReviewInfo

פועלים לפי ההנחיות שמפורטות מתי כדאי לשלוח בקשה להצגת מודעה מתוך האפליקציה. ביקורות כדי לקבוע נקודות טובות בתהליך שעובר המשתמש באפליקציה כדי לבקש ממנו לבצע בדיקה (לדוגמה, משתמש מסיים שלב במשחק). כשהאפליקציה מגיעה לאחת מהנקודות האלה, להשתמש בReviewManager כדי ליצור משימת בקשה. אם הפעולה בוצעה ללא שגיאות, ה-API יחזיר את אובייקט ReviewInfo שנדרש כדי להתחיל את תהליך הבדיקה בתוך האפליקציה.

Kotlin

val request = manager.requestReviewFlow()
request.addOnCompleteListener { task ->
    if (task.isSuccessful) {
        // We got the ReviewInfo object
        val reviewInfo = task.result
    } else {
        // There was some problem, log or handle the error code.
        @ReviewErrorCode val reviewErrorCode = (task.getException() as ReviewException).errorCode
    }
}

Java

ReviewManager manager = ReviewManagerFactory.create(this);
Task<ReviewInfo> request = manager.requestReviewFlow();
request.addOnCompleteListener(task -> {
    if (task.isSuccessful()) {
        // We can get the ReviewInfo object
        ReviewInfo reviewInfo = task.getResult();
    } else {
        // There was some problem, log or handle the error code.
        @ReviewErrorCode int reviewErrorCode = ((ReviewException) task.getException()).getErrorCode();
    }
});

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

שימוש בReviewInfo כדי להפעיל את תהליך הבדיקה בתוך האפליקציה. יש להמתין עד שהמשתמש ישלים את תהליך הבדיקה בתוך האפליקציה, לפני המשך התהליך הרגיל של המשתמשים באפליקציה (למשל מתקדמים לרמה הבאה).

Kotlin

val flow = manager.launchReviewFlow(activity, reviewInfo)
flow.addOnCompleteListener { _ ->
    // 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.
}

Java

Task<Void> flow = manager.launchReviewFlow(activity, reviewInfo);
flow.addOnCompleteListener(task -> {
    // 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.
});

השלבים הבאים

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