Используйте приложение, чтобы оценить его на рынке.

В настоящее время я разрабатываю приложение на Android. Где я хочу дать некоторые функции пользователю, чтобы оценить текущее приложение. Их будет кнопка на щелчке, она спросит, хочет ли пользователь оценивать приложение или нет? Если «да» поступит на рыночную заявку на устройстве, чтобы оценить приложение (Market должно показать это приложение.) Или он откроет браузер, который загрузит рынок и покажет это приложение. Раньше любой использовал эту функцию. Пожалуйста, предоставьте некоторую помощь.

Спасибо.

Solutions Collecting From Web of "Используйте приложение, чтобы оценить его на рынке."

Я всегда использую такой метод:

private void launchMarket() { Uri uri = Uri.parse("market://details?id=" + getPackageName()); Intent goToMarket = new Intent(Intent.ACTION_VIEW, uri); try { startActivity(goToMarket); } catch (ActivityNotFoundException e) { Toast.makeText(this, R.string.couldnt_launch_market, Toast.LENGTH_LONG).show(); } } 
 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(); }} 

Теперь интегрируйте класс в свою деятельность следующим образом:

 AppRater.app_launched(this);