<small id='PAWO1'></small><noframes id='PAWO1'>

    <legend id='PAWO1'><style id='PAWO1'><dir id='PAWO1'><q id='PAWO1'></q></dir></style></legend>
    1. <tfoot id='PAWO1'></tfoot>
    2. <i id='PAWO1'><tr id='PAWO1'><dt id='PAWO1'><q id='PAWO1'><span id='PAWO1'><b id='PAWO1'><form id='PAWO1'><ins id='PAWO1'></ins><ul id='PAWO1'></ul><sub id='PAWO1'></sub></form><legend id='PAWO1'></legend><bdo id='PAWO1'><pre id='PAWO1'><center id='PAWO1'></center></pre></bdo></b><th id='PAWO1'></th></span></q></dt></tr></i><div id='PAWO1'><tfoot id='PAWO1'></tfoot><dl id='PAWO1'><fieldset id='PAWO1'></fieldset></dl></div>
        • <bdo id='PAWO1'></bdo><ul id='PAWO1'></ul>

        如何在 Android App 中实现 Rate It 功能

        How to implement Rate It feature in Android App(如何在 Android App 中实现 Rate It 功能)
          <tfoot id='bpUw5'></tfoot>

            <tbody id='bpUw5'></tbody>
            <bdo id='bpUw5'></bdo><ul id='bpUw5'></ul>
              1. <legend id='bpUw5'><style id='bpUw5'><dir id='bpUw5'><q id='bpUw5'></q></dir></style></legend>
                <i id='bpUw5'><tr id='bpUw5'><dt id='bpUw5'><q id='bpUw5'><span id='bpUw5'><b id='bpUw5'><form id='bpUw5'><ins id='bpUw5'></ins><ul id='bpUw5'></ul><sub id='bpUw5'></sub></form><legend id='bpUw5'></legend><bdo id='bpUw5'><pre id='bpUw5'><center id='bpUw5'></center></pre></bdo></b><th id='bpUw5'></th></span></q></dt></tr></i><div id='bpUw5'><tfoot id='bpUw5'></tfoot><dl id='bpUw5'><fieldset id='bpUw5'></fieldset></dl></div>
              2. <small id='bpUw5'></small><noframes id='bpUw5'>

                1. 本文介绍了如何在 Android App 中实现 Rate It 功能的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  我正在开发一个 Android 应用程序.其中一切正常.我的应用程序已准备好启动.但是我需要再实现一项功能.我需要显示一个弹出窗口,其中包含

                  I am developing an Android App. In which everything is working right. My app is ready to launch. But there I need to implement one more feature. I need to display a popup that contains

                  评分稍后提醒我

                  在这里,如果任何用户对市场上的应用程序进行评分,则弹出窗口不会消失.我在 Google 中搜索并找到了一个 链接.有了这个,我明白这是不可能知道的.所以我需要一个建议.

                  Here if any user rates the app in the market then the popup won't be disappeared. I have searched in Google and found one link. With this, I understand that it's not possible to know. So I need a suggestion for this.

                  以前有人遇到过这种情况吗?如果是这样,是否有任何解决方案或替代方案?

                  Has anybody faced this situation before? If so, is there any solution or any alternative for this?

                  推荐答案

                  在某种程度上我实现了这个.无法知道用户是否对应用进行了评分,以防止评分成为货币(一些开发人员可能会添加评价此应用并在应用中免费获得某某"之类的选项).

                  I implemented this a while back, to some extent. It is impossible to know whether or not a user has rated an app, to prevent ratings from becoming a currency (some developers might add an option like "Rate this app and get so and so in the app for free").

                  我编写的类提供了三个按钮,并配置了对话框,使其仅在应用程序启动 n 次后显示(如果用户已经之前用过一点.他们中的大多数人甚至不太可能知道它在第一次运行时会做什么):

                  The class I wrote provides three buttons, and configures the dialog so that it is only shown after the app has been launched n times (users have a higher chance of rating the app if they've used it a bit before. Most of them are unlikely to even know what it does on the first run):

                  public class AppRater {
                      private final static String APP_TITLE = "App Name";// App Name
                      private final static String APP_PNAME = "com.example.name";// Package Name
                  
                      private final static int DAYS_UNTIL_PROMPT = 3;//Min number of days
                      private final static int LAUNCHES_UNTIL_PROMPT = 3;//Min number of launches
                  
                      public static void app_launched(Context mContext) {
                          SharedPreferences prefs = mContext.getSharedPreferences("apprater", 0);
                          if (prefs.getBoolean("dontshowagain", false)) { return ; }
                  
                          SharedPreferences.Editor editor = prefs.edit();
                  
                          // Increment launch counter
                          long launch_count = prefs.getLong("launch_count", 0) + 1;
                          editor.putLong("launch_count", launch_count);
                  
                          // Get date of first launch
                          Long date_firstLaunch = prefs.getLong("date_firstlaunch", 0);
                          if (date_firstLaunch == 0) {
                              date_firstLaunch = System.currentTimeMillis();
                              editor.putLong("date_firstlaunch", date_firstLaunch);
                          }
                  
                          // Wait at least n days before opening
                          if (launch_count >= LAUNCHES_UNTIL_PROMPT) {
                              if (System.currentTimeMillis() >= date_firstLaunch + 
                                      (DAYS_UNTIL_PROMPT * 24 * 60 * 60 * 1000)) {
                                  showRateDialog(mContext, editor);
                              }
                          }
                  
                          editor.commit();
                      }   
                  
                      public static void showRateDialog(final Context mContext, final SharedPreferences.Editor editor) {
                          final Dialog dialog = new Dialog(mContext);
                          dialog.setTitle("Rate " + APP_TITLE);
                  
                          LinearLayout ll = new LinearLayout(mContext);
                          ll.setOrientation(LinearLayout.VERTICAL);
                  
                          TextView tv = new TextView(mContext);
                          tv.setText("If you enjoy using " + APP_TITLE + ", please take a moment to rate it. Thanks for your support!");
                          tv.setWidth(240);
                          tv.setPadding(4, 0, 4, 10);
                          ll.addView(tv);
                  
                          Button b1 = new Button(mContext);
                          b1.setText("Rate " + APP_TITLE);
                          b1.setOnClickListener(new OnClickListener() {
                              public void onClick(View v) {
                                  mContext.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + APP_PNAME)));
                                  dialog.dismiss();
                              }
                          });        
                          ll.addView(b1);
                  
                          Button b2 = new Button(mContext);
                          b2.setText("Remind me later");
                          b2.setOnClickListener(new OnClickListener() {
                              public void onClick(View v) {
                                  dialog.dismiss();
                              }
                          });
                          ll.addView(b2);
                  
                          Button b3 = new Button(mContext);
                          b3.setText("No, thanks");
                          b3.setOnClickListener(new OnClickListener() {
                              public void onClick(View v) {
                                  if (editor != null) {
                                      editor.putBoolean("dontshowagain", true);
                                      editor.commit();
                                  }
                                  dialog.dismiss();
                              }
                          });
                          ll.addView(b3);
                  
                          dialog.setContentView(ll);        
                          dialog.show();        
                      }
                  }
                  

                  集成类就像添加一样简单:

                  Integrating the class is as simple as adding:

                  AppRater.app_launched(this);
                  

                  到您的活动.只需要添加到整个应用中的一个Activity即可.

                  To your Activity. It only needs to be added to one Activity in the entire app.

                  这篇关于如何在 Android App 中实现 Rate It 功能的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

                  相关文档推荐

                  Android - Is it possible to get install referrer programmatically(Android - 是否有可能以编程方式安装引荐来源网址)
                  How to sign an APK with more than one certificate?(如何使用多个证书签署 APK?)
                  versionCode vs versionName in Android Manifest(Android Manifest 中的 versionCode 与 versionName)
                  What does this Google Play APK publish error message mean?(这个 Google Play APK 发布错误消息是什么意思?)
                  Lost my keystore for uploaded app on android market(丢失了我在 android 市场上上传的应用程序的密钥库)
                  App on Google Play always shows quot;Updatequot; instead of open(Google Play 上的应用程序总是显示“更新;而不是打开)
                    <bdo id='gDsMC'></bdo><ul id='gDsMC'></ul>

                    <small id='gDsMC'></small><noframes id='gDsMC'>

                  • <tfoot id='gDsMC'></tfoot>

                      <legend id='gDsMC'><style id='gDsMC'><dir id='gDsMC'><q id='gDsMC'></q></dir></style></legend>
                        <tbody id='gDsMC'></tbody>

                      • <i id='gDsMC'><tr id='gDsMC'><dt id='gDsMC'><q id='gDsMC'><span id='gDsMC'><b id='gDsMC'><form id='gDsMC'><ins id='gDsMC'></ins><ul id='gDsMC'></ul><sub id='gDsMC'></sub></form><legend id='gDsMC'></legend><bdo id='gDsMC'><pre id='gDsMC'><center id='gDsMC'></center></pre></bdo></b><th id='gDsMC'></th></span></q></dt></tr></i><div id='gDsMC'><tfoot id='gDsMC'></tfoot><dl id='gDsMC'><fieldset id='gDsMC'></fieldset></dl></div>