Запрос оценок и отзывов для приложения
Вы можете добавить код в приложение универсальная платформа Windows (UWP), чтобы программно запрашивать у клиентов оценку или просмотр приложения. Это можно сделать несколькими способами.
- Вы можете отобразить диалоговое окно оценки и проверки непосредственно в контексте приложения.
- Вы можете программно открыть страницу оценки и проверки приложения в Microsoft Store.
Когда вы готовы проанализировать данные о рейтингах и проверках, вы можете просматривать данные в Центре партнеров или использовать API аналитики Microsoft Store для программного получения этих данных.
Внимание
При добавлении функции оценки в приложении все проверки должны отправлять пользователя в механизмы оценки Магазина независимо от выбранной звездочки. Если вы собираете отзывы или комментарии от пользователей, должно быть ясно, что оно не связано с рейтингом приложений или отзывами в Магазине, но отправляется непосредственно разработчику приложения. Дополнительные сведения о мошеннических или нечестных действиях см. в кодексе поведения разработчиков.
Отображение рейтинга и диалогового окна проверки в приложении
Чтобы программным образом отобразить диалоговое окно из приложения, которое просит клиента оценить приложение и отправить отзыв, вызовите метод RequestRateAndReviewAppAsync в пространстве имен Windows.Services.Store .
Внимание
Запрос на отображение рейтинга и диалогового окна проверки должен вызываться в потоке пользовательского интерфейса в приложении.
using Windows.ApplicationModel.Store;
private StoreContext _storeContext;
public async Task Initialize()
{
if (App.IsMultiUserApp) // pseudo-code
{
IReadOnlyList<User> users = await User.FindAllAsync();
User firstUser = users[0];
_storeContext = StoreContext.GetForUser(firstUser);
}
else
{
_storeContext = StoreContext.GetDefault();
}
}
private async Task PromptUserToRateApp()
{
// Check if we’ve recently prompted user to review, we don’t want to bother user too often and only between version changes
if (HaveWePromptedUserInPastThreeMonths()) // pseudo-code
{
return;
}
StoreRateAndReviewResult result = await
_storeContext.RequestRateAndReviewAppAsync();
// Check status
switch (result.Status)
{
case StoreRateAndReviewStatus.Succeeded:
// Was this an updated review or a new review, if Updated is false it means it was a users first time reviewing
if (result.UpdatedExistingRatingOrReview)
{
// This was an updated review thank user
ThankUserForReview(); // pseudo-code
}
else
{
// This was a new review, thank user for reviewing and give some free in app tokens
ThankUserForReviewAndGrantTokens(); // pseudo-code
}
// Keep track that we prompted user and don’t do it again for a while
SetUserHasBeenPrompted(); // pseudo-code
break;
case StoreRateAndReviewStatus.CanceledByUser:
// Keep track that we prompted user and don’t prompt again for a while
SetUserHasBeenPrompted(); // pseudo-code
break;
case StoreRateAndReviewStatus.NetworkError:
// User is probably not connected, so we’ll try again, but keep track so we don’t try too often
SetUserHasBeenPromptedButHadNetworkError(); // pseudo-code
break;
// Something else went wrong
case StoreRateAndReviewStatus.OtherError:
default:
// Log error, passing in ExtendedJsonData however it will be empty for now
LogError(result.ExtendedError, result.ExtendedJsonData); // pseudo-code
break;
}
}
Метод RequestRateAndReviewAppAsync появился в Windows 10 версии 1809, и его можно использовать только в проектах, предназначенных для обновление Windows 10 за октябрь 2018 г. (10.0; Сборка 17763) или более поздняя версия в Visual Studio.
Данные ответа для запроса на оценку и проверку
После отправки запроса на отображение диалогового окна оценки и проверки свойство ExtendedJsonData класса StoreRateAndReviewResult содержит строку в формате JSON, которая указывает, был ли запрос успешным.
В следующем примере показано возвращаемое значение для этого запроса после успешного отправки оценки или проверки.
{
"status": "success",
"data": {
"updated": false
},
"errorDetails": "Success"
}
В следующем примере показано возвращаемое значение для этого запроса после того, как клиент решит не отправить оценку или рецензирование.
{
"status": "aborted",
"errorDetails": "Navigation was unsuccessful"
}
В следующей таблице описываются поля в строке данных в формате JSON.
Поле | Описание |
---|---|
состояние | Строка, указывающая, успешно ли клиент отправил рейтинг или отзыв. Поддерживаемые значения выполняются успешно и прерваны. |
data | Объект, содержащий одно логическое значение с именем обновлено. Это значение указывает, обновляет ли клиент существующую оценку или проверку. Объект данных включен только в ответы успешного выполнения. |
errorDetails | Строка, содержащая сведения об ошибке для запроса. |
Запуск страницы оценки и проверки приложения в Магазине
Если вы хотите программно открыть страницу оценки и проверки приложения в Магазине, можно использовать метод LaunchUriAsync со ms-windows-store://review
схемой URI, как показано в этом примере кода.
bool result = await Windows.System.Launcher.LaunchUriAsync(new Uri("ms-windows-store://review/?ProductId=9WZDNCRFHVJL"));
Дополнительные сведения см. в разделе "Запуск приложения Microsoft Store".
Анализ оценок и отзывов данных
Для анализа рейтингов и отзывов данных от клиентов у вас есть несколько вариантов:
- Отчет "Отзывы" в Центре партнеров можно использовать для просмотра оценок и отзывов от клиентов. Вы также можете скачать этот отчет, чтобы просмотреть его в автономном режиме.
- Вы можете использовать методы получения оценок приложений и получения отзывов приложений в API аналитики Магазина для программного получения рейтингов и отзывов от клиентов в формате JSON.