Как запустить Google Play в режиме "Отправить отзыв" на Android?

Я только что написал игру для Google Play Store и хотел бы напомнить моим клиентам оставить отзыв на рынке для приложения (особенно демо-версия). Есть ли способ запустить рыночные намерения в режиме, который приведет пользователя к разделу отзывов/комментариев на странице?

Я уже использую этот подход для привязки своего демо к платному приложению...

Intent goToMarket = null;
goToMarket = new Intent(
                   Intent.ACTION_VIEW,
                   Uri.parse("market://details?id=com.paulmaidment.games.flagsoftheworld"));
startActivity(goToMarket);

Есть ли наилучшая практика?

Кроме того, есть ли способ отслеживать рефералы из моего демонстрационного приложения, чтобы я мог попытаться рассчитать какой-то коэффициент конверсии? (то есть, насколько эффективна демонстрационная заявка при создании продаж.)

Ответ 1

Я не уверен, возможно ли его намерение взять пользователя непосредственно в раздел отзывов/комментариев. Руководство разработчика не упоминает эту возможность.

Что касается отслеживания рефералов, вы можете проверить это: http://code.google.com/mobile/analytics/docs/android/#android-market-tracking

Ответ 2

Обратите внимание, что для того, чтобы сделать поток активности более ожидаемым для конечного пользователя, вы должны рассмотреть возможность добавления некоторых флагов намерения. Я предлагаю:

String appPackageName= getPackageName();
Intent marketIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id="+appPackageName));
marketIntent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY | Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET|Intent.FLAG_ACTIVITY_MULTIPLE_TASK|Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(marketIntent);

Таким образом, когда пользователь нажимает обратно, он доберется до вашего заявления и не останется на рынке (если он был там раньше). Кроме того, если пользователь снова открыл ваше приложение (после того, как оно ушло на задний план), рынок не появится.

Вы также можете добавить попытку catch для вызова startActivity(), чтобы вы могли показывать веб-сайт приложения, если рынок недоступен (либо каким-либо образом деинсталлирован, либо потому, что компания устройства не включила она).


EDIT: другая альтернатива Как использовать Intent.ACTION_APP_ERROR как средство для "обратной связи" в Android?