如何每10天Android调用一次Play API的应用内审核?

问题描述

我实现了Play Core Library的应用内评论,但是当我第一次打开该应用时,该评论会弹出。

只有在该应用程序使用了10天或更长时间之后,才可以打开该弹出框吗?

我已经使用以下代码实现了它:

    ReviewManager manager;
    ReviewInfo reviewInfo;

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

        manager = ReviewManagerFactory.create(this);
        Task<ReviewInfo> request = manager.requestReviewFlow();
        request.addOnCompleteListener(task -> {
            if (task.isSuccessful()) {
                // We can get the ReviewInfo object
                reviewInfo = task.getResult();
                openReview();
            }
        });
    }

    public void openReview(){
        if(reviewInfo != null){
            Task<Void> flow = manager.launchReviewFlow(this,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.
            });
        } 

解决方法

我会这样做:

  • 首次打开应用时,记录日期/时间并将其保存在 SharedPreferences
  • 每次用户打开应用时,都会执行当前日期/时间 - 应用首次打开时的日期/时间。
  • 如果此值超过 10 天,请显示 IAP 审核对话框。然后您将重置存储在 SharedPreferences
  • 中的当前日期/时间