Запрос оценок и отзывов для вашего приложения
Можно добавить код в приложение универсальной платформы Windows (UWP), чтобы программным образом запрашивать у пользователей оценку или отзыв на приложение. Это можно сделать несколькими способами:
- Можно отобразить диалоговое окно оценки и отзыва непосредственно в контексте приложения.
- Можно программным способом открыть страницу оценки и отзывов для вашего приложения в Microsoft Store.
Когда вы будете готовы к анализу оценок и отзывов, вы можете просмотреть данные в Центре партнеров или использовать API аналитики Microsoft Store для получения этих данных программным способом.
Важно!
При добавлении функции оценки в приложении все отзывы должны отправлять пользователя в механизмы оценки Магазина, независимо от выбранной star оценки. Если вы собираете отзывы или комментарии от пользователей, должно быть ясно, что они не связаны с оценкой приложения или отзывами в Магазине, а отправляются непосредственно разработчику приложения. Дополнительные сведения о мошеннических или нечестных действиях см. в статье Правила поведения разработчиков.
Показ диалогового окна оценки и отзыва в приложении
Чтобы программным способом отобразить диалоговое окно из вашего приложения, которое просит клиента оценить ваше приложение и отправить отзыв, вызовите метод 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.
Поле | Описание |
---|---|
status | Строка, указывающая, оставил ли пользователь оценку или отзыв. Поддерживаются значения success и aborted. |
data | Объект, содержащий одно логическое значение с именем updated. Это значение указывает, обновил ли пользователь существующую оценку или отзыв. Объект data включается только в ответы при успешном завершении. |
errorDetails | Строка, содержащая информацию об ошибках для запроса. |
Запуск страницы оценки и отзыва страницы для вашего приложения в Store
Если вы хотите программным образом открыть страницу оценки и отзыва для вашего приложения в Store, можно использовать метод LaunchUriAsync со схемой URI ms-windows-store://review
, как показано в этом примере кода.
bool result = await Windows.System.Launcher.LaunchUriAsync(new Uri("ms-windows-store://review/?ProductId=9WZDNCRFHVJL"));
Дополнительные сведения см. в разделе Запуск приложения Microsoft Store.
Анализ данных оценок и отзывов
Для анализа данных оценок и отзывов пользователей есть несколько вариантов:
- Вы можете использовать отчет "Отзывы " в Центре партнеров для просмотра оценок и отзывов клиентов. Также можно скачать этот отчет для просмотра в автономном режиме.
- Можно использовать методы Получения оценок приложения и Получения отзывов на приложение в API аналитики Microsoft Store, чтобы программным образом получить оценки и отзывы пользователей в формате JSON.
Связанные темы
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по