如何使用Android Five Stars库向Android应用程序添加”为我的应用评分”对话框

本文概述

作为开发人员, 我们喜欢了解用户对我们作品的看法。通常, 用户不会因为时间, 懒惰等原因而公开分享自己的观点。但这对我们很重要, 因此, 如果他们不符合Play商店中你的应用程序的资格, 则至少应在内部对你的应用程序进行资格审查, 可以以某种方式知道用户对你的应用的看法。如果你正在寻找某种对话框, 允许用户给你的应用程序加一些星号, 那么你找到了正确的帖子!

在本文中, 我们将向你展示如何在Android应用程序中安装和实现Android五星库。

1.安装Android五颗星库

Android五颗星库是一个小型库, 可帮助开发人员向其应用程序添加”为我的应用评分”对话框。之所以称为”五颗星”, 是因为该对话框根据用户给出的等级具有不同的行为。该库要求你在build.gradle文件中将minSdkVersion设置为15。修改build.gradle文件并添加新库:

dependencies {
    implementation 'com.github.Angtrim:Android-Five-Stars-Library:v3.1'
}

更新文件后, 同步你的Android项目。有关此库的更多信息, 请访问Github上的官方存储库。

2.实施

安装后, 在你的应用程序中实现该库将非常容易。第一步, 在执行对话框的类中包括所需的名称空间:

// To display a message in the log (logcat)
import android.util.Log;

// Namespaces of the application
import angtrim.com.fivestarslibrary.FiveStarsDialog;
import angtrim.com.fivestarslibrary.NegativeReviewListener;
import angtrim.com.fivestarslibrary.ReviewListener;

然后, 继续显示带有以下代码段的对话框:

// In this example, we are running the dialog everytime the app starts
FiveStarsDialog fiveStarsDialog = new FiveStarsDialog(this, "dev@ourcodeworld.com");
fiveStarsDialog.setRateText("Your custom text")
    .setTitle("Your custom title")
    // If "Force Mode" is activated, when the user selects 4/5 stars
    // he is immediately redirected to the Play Store, without asking for a confirm
    .setForceMode(false)
    // Market opened if a rating >= 2 is selected
    .setUpperBound(2)
    // OVERRIDE mail intent for negative review
    .setNegativeReviewListener(this)
    // Used to listen for reviews (if you want to track them )
    .setReviewListener(this)
    // Show after defines how many times after the execution of this snippet
    // should the dialog appear (0 == immediately)
    .showAfter(0);

请注意, 包含代码的类需要实现NegativeReviewListener和ReviewListener类, 以便将其用作setNegativeReviewListener和setReviewListener方法的上下文, 例如:

public class MainActivity extends AppCompatActivity implements NegativeReviewListener, ReviewListener { ... }

否则, 你将需要传递一个类的新实例, 该实例实现所提到的类并包含根据用户选择用作对话框的回调的2个方法:

@Override
public void onNegativeReview(int stars) {
    Log.d(TAG, "Negative review " + stars);
}

@Override
public void onReview(int stars) {
    Log.d(TAG, "Review " + stars);
}

现在, 每次执行该代码段时, 它将根据showAfter方法中提供的值来评估是否应显示该代码段。该库非常简单, 只需注意:

  • 当用户点击确定或从不时, 对话框将不再显示
  • 当用户点击NOT NOW时, 访问计数器将被重置, 并且在选定的时间后将再次显示该对话框。
  • 如果用户给5颗星中的4颗或5颗, 则该用户将被转到Google Play商店页面以提供实际评分。
  • 如果用户给5星中的3星或更少, ​​则要求用户将错误报告发送给开发人员。

完整的例子

下列类提供了使用该库的工作应用程序的完整示例:

package com.yourcompany.yourapp;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

import android.util.Log;
import angtrim.com.fivestarslibrary.FiveStarsDialog;
import angtrim.com.fivestarslibrary.NegativeReviewListener;
import angtrim.com.fivestarslibrary.ReviewListener;


public class MainActivity extends AppCompatActivity implements NegativeReviewListener, ReviewListener {

    private static final String TAG = MainActivity.class.getSimpleName();

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);


        // In this example, we are running the dialog everytime the app starts
        FiveStarsDialog fiveStarsDialog = new FiveStarsDialog(this, "dev@ourcodeworld.com");
        fiveStarsDialog.setRateText("Your custom text")
            .setTitle("Your custom title")
            .setForceMode(false)
            // Market opened if a rating >= 2 is selected
            .setUpperBound(2)
            // OVERRIDE mail intent for negative review
            .setNegativeReviewListener(this)
            // Used to listen for reviews (if you want to track them )
            .setReviewListener(this)
            // Show after defines how many times after the execution of this snippet
            // should the dialog appear (0 == immediately)
            .showAfter(0);
    }

    @Override
    public void onNegativeReview(int stars) {
        Log.d(TAG, "Negative review " + stars);
    }

    @Override
    public void onReview(int stars) {
        Log.d(TAG, "Review " + stars);
    }
}

Android五颗星库在内部使用android SharedPreferences类来存储代码片段以显示对话框的执行次数(showAfter方法)。

编码愉快!

微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?