دمج المراجعات داخل التطبيق (Kotlin أو Java)

يوضِّح هذا الدليل كيفية دمج المراجعات داخل التطبيق في تطبيقك باستخدام Kotlin أو Java. تتوفّر أدلة دمج منفصلة إذا كنت تستخدم ترميز أصلي أو Unity.

إعداد بيئة التطوير

تُعد مكتبة المراجعات داخل التطبيق في Play جزءًا من مكتبات Google Play الأساسية. يُرجى تضمين العناصر الاعتمادية التالية لنظام Gradle لدمج مكتبة المراجعات داخل التطبيق في Play.

رائع

// 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 لإنشاء مهمة طلب. في حال نجاح هذا الإجراء، تعرض واجهة برمجة التطبيقات عنصر 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.
});

الخطوات التالية

اختبِر خطوات المراجعة داخل التطبيق للتأكّد من أنّ عملية الدمج تعمل بشكل صحيح.