2013-02-28 10 views
2

Я разработал простую бесплатную игру для Windows 8 Store, и теперь я хочу попросить моих пользователей дать оценку игре и, возможно, написать ей обзор.Как проверить, оценил ли пользователь мое приложение

Как я могу проверить, сделали ли они это (например, оценили игру или написали обзор), поэтому я не спрашиваю еще раз?

+0

Этот вопрос не является дубликатом. Люди очень близки к подобным вопросам. Мой вопрос закрыт и возобновлен 3 раза! Однако, если у вас есть идея о том, как я могу сделать это полезным, просто сообщите мне, пожалуйста. – MBZ

+0

Благодарим за помощь. Но я действительно не знаю, какая разница может улучшить ситуацию. Это уже очень отличается от другого. – MBZ

+0

Ничего благодарного. Возможно, вы можете найти вдохновение из [ответов] (http://stackoverflow.com/questions/14078723/why-is-c-said-to-be-an-unsafe-language-while-c-sharp-is- а-безопасные один/14079393 # 14079393). –

ответ

0

Джаред довольно много прибил его. Я не думаю, что вы можете, если нет API-интерфейса Windows Store, который предоставляет эту информацию вашему приложению. Информация пользователя и его статус и данные о состоянии и просмотре хранятся вне вашего приложения, поэтому вам необходимо запросить внешний источник данных (в этом случае Windows Store), чтобы узнать, оценил ли он или нет ваше приложение и просмотрел ваше приложение. Windows Store API в текущей версии не дает прямого доступа к этой информации.

Вот одно простое, но не очень точное обходное решение. Вы можете напомнить пользователям, чтобы они предоставили свои отзывы, если они этого не сделали, предоставив кнопку, которая ссылается на веб-страницу обзора, и быстрый вопрос «Да/Нет» в вашем приложении и локальное сохранение ответа. В идеальном мире пользователь сделал обзор, и он/она отвечает Да на ваш вопрос, и они не обеспокоены другим напоминанием.

+0

Существует способ получить данные обзора. https://services.apps.microsoft.com/4R/6.2.9200-1/1/en-US/m/US/Apps/f514d64b-8705-43b7-a400-c4f4f3dedfc0/Reviews/all/s/date/ 1/pn/1 Используйте это, а затем сопоставьте первое и последнее имя с тем, которое вы используете с помощью Live SDK. Вы не сможете обнаружить разницу между двумя Чжимин Сюэ, но эй .... –

0

API для этого не используется. Если бы это было, это, скорее всего, было бы частью класса CurrentApp, в котором рассказывается, как было куплено приложение.

Если вы хотите, чтобы предложить пользователю заполнить рейтинг (который они, возможно, уже сделано), вы можете следовать инструкциям, приведенным в этой теме:

http://social.msdn.microsoft.com/Forums/en-SG/winappswithcsharp/thread/3cba0db4-c2f6-4c79-98a9-0f740dfacf61

Мне нравится последнее сообщение, который показывает вы, как ссылку непосредственно на вкладку обзора.

1

Вы можете получить информацию о магазине, как описано ниже, включая обзоры и данные о пользователях, которые написали обзор. Затем вы можете попытаться сопоставить эту информацию с информацией пользователя, доступной через Live SDK для текущего пользователя. Вы сможете только совместить имя FirstName LastName, нет единого уникального идентификатора, или, может быть, есть значок значка изображения пользователя, который может совпадать между ними, но я не проверял.

https://services.apps.microsoft.com/4R/6.2.9200-1/1/en-US/m/US/Apps/f514d64b-8705-43b7-a400-c4f4f3dedfc0/Reviews/all/s/date/1/pn/1

http://jasonthomascarter.blogspot.com/2013/08/the-friendly-developers-guide-to.html

Сегодня я получил запрос от разработчика собрата по электронной почте поддержки для одного из моих приложений Windows Store App рулетка. Это было довольно освежающе, и я довольно открыт для обмена информацией с другими разработчиками. Я больше взволнован, чтобы понять, что они будут создавать, чем беспокоится о возможности конкуренции. Поэтому я здесь, чтобы поделиться со всеми вами. Во всяком случае, этот разработчик задавался вопросом, как получить эту информацию о приложении, и я объясню, как я получаю доступ к этому и как вы можете это сделать.

Сначала небольшое продвижение по службе, в дополнение к рулетке приложений. Я использую эту информацию в нескольких других приложениях. Developer Dashboard - одностановочный магазин для просмотра отзывов со всех стран для всех ваших приложений простым нажатием, чтобы перевести каждый обзор, разработчики Windows Store - каталог всех разработчиков в Windows Store (более 10000) и их приложениях, наиболее активных Рецензенты представляют собой каталог самых плодовитых рецензентов приложений и их обзоров, а также в моем собственном приложении App Software Software, в котором перечислены все другие приложения, которые я опубликовал в Windows Store, пожалуйста, попробуйте некоторые из них.

Здесь мы идем! Сначала мы начнем с файла Robots.txt для веб-сайта Windows Store.http://apps.microsoft.com/robots.txt

Веб-сайты используют robots.txt, чтобы направлять веб-сканеров о том, как себя вести, что они хотят видеть и чего они не хотят видеть.

http://www.robotstxt.org/

Веб-роботы (также известные как веб-передвижников, Краулеров или пауками), являются программы, которые автоматически прочесывают в Интернете. Поисковые системы, такие как Google, используют их для индексации веб-контента, спамеры используют их для сканирования адресов электронной почты, и у них есть много других применений.

В этом случае индекс файла Sitemaps.xml является то, что мы заинтересованы в. http://apps.microsoft.com/windows/sitemap_index.xml

http://www.sitemaps.org/

Sitemaps это простой способ для вебмастеров сообщить поисковым системам о страницах на их сайтах, которые доступны для ползет. В своей простейшей форме Sitemap представляет собой XML-файл, в котором перечислены URL-адреса сайта, а также дополнительные метаданные о каждом URL-адресе (когда он был последним обновлен, как часто он обычно изменяется и насколько он важен, по сравнению с другими URL-адресами на сайте), чтобы поисковые системы могли более разумно сканировать сайт.

В файле индекса Sitemap указывается каждый из файлов XML-файла Sitemap. На момент написания этой статьи на веб-сайте apps.microsoft.com было 141 отдельный файл XML Sitemap.

Внутри отдельных файлов указаны тысячи URL-адресов веб-страниц приложений Windows Store. Такие, как этот URL в приложении PlayTo Приемника: http://apps.microsoft.com/windows/en-us/app/playto-receiver/72a6ba17-2d4e-4a1c-bcfb-cdc5d4b32d0e

Этих веб-страниц для приложений действительно включают хороший бит информации, которую мы могли бы скрести от HTML, но мы можем сделать лучше .... Ключевую информацию мы получаем вот идентификаторы приложений и в которых географические имена этих идентификаторов приложений публикуются в магазине. Например: 72a6ba17-2d4e-4a1c-bcfb-cdc5d4b32d0e и ан-нас и т.д ...

А теперь хорошие вещи, есть несколько веб-сервисов которые мы можем вызвать с помощью наших недавно найденной App идентификаторов и географий Информация.

https://services.apps.microsoft.com/browse/6.2.9200-1/615/en-US_en-US/c/US/cp/10005001/Apps/72a6ba17-2d4e-4a1c-bcfb-cdc5d4b32d0e

Существует много информации, доступные через этот веб-службу, но это не четко прописано по именам элементов. Вот моя интерпретация многих (не всех) из них, чтобы начать вас.

sSubCategoryName = rawXML.getElementsByTagName ('Sc') [0] .getElementsByTagName ('N') [0] .childNodes [0] .nodeValue; sSubCategoryId = rawXML.getElementsByTagName ('Sc') [0] .getElementsByTagName ('I') [0] .childNodes [0] .nodeValue; sHasTrial = rawXML.getElementsByTagName ('Try') [0] .childNodes [0] .nodeValue; sDescription = rawXML.getElementsByTagName ('D') [0] .childNodes [0] .nodeValue; sDeveloper = rawXML.getElementsByTagName ('Dev') [0] .childNodes [0] .nodeValue; sWebsite = rawXML.getElementsByTagName ('Ws') [0] .childNodes [0] .nodeValue; sSupport = rawXML.getElementsByTagName ('Sws') [0] .childNodes [0] .nodeValue; sPrivacy = rawXML.getElementsByTagName ('Pu') [0] .childNodes [0] .nodeValue; sCategoryName = rawXML.getElementsByTagName ('C') [0] .getElementsByTagName ('N') [0] .childNodes [0] .nodeValue; sCategoryId = rawXML.getElementsByTagName ('C') [0] .getElementsByTagName ('I') [0] .childNodes [0] .nodeValue; sPrice = rawXML.getElementsByTagName ('P') [0] .childNodes [0].nodeValue; sForegroundColor = rawXML.getElementsByTagName ('Fg') [0] .childNodes [0] .nodeValue; sBackgroundColor = rawXML.getElementsByTagName ('Bg') [0] .childNodes [0] .nodeValue; sAppIcon = rawXML.getElementsByTagName ('Ico') [0] .childNodes [0] .nodeValue; sAppName = rawXML.getElementsByTagName ('T') [0] .childNodes [0] .nodeValue; sPackageFamilyName = rawXML.getElementsByTagName ('Pfn') [0] .childNodes [0] .nodeValue; sResourceId = rawXML.getElementsByTagName ('R') [0] .childNodes [0] .nodeValue; sId = rawXML.getElementsByTagName ('I') [0] .childNodes [0] .nodeValue; sCapabilities = sCapabilities + arrCapabilities [k] .childNodes [0] .nodeValue + ","; sUpdate = rawXML.getElementsByTagName ('Ud') [0] .childNodes [0] .nodeValue; sFeatures1 = rawXML.getElementsByTagName ('Dbp') [0] .childNodes [0] .nodeValue; sFeatures2 = rawXML.getElementsByTagName ('Dbp') [1] .childNodes [0] .nodeValue; sFeatures3 = rawXML.getElementsByTagName ('Dbp') [2] .childNodes [0] .nodeValue; sFeatures4 = rawXML.getElementsByTagName ('Dbp') [3] .childNodes [0] .nodeValue; sFeatures5 = rawXML.getElementsByTagName ('Dbp') [4] .childNodes [0] .nodeValue; sFeatures6 = rawXML.getElementsByTagName ('Dbp') [5] .childNodes [0] .nodeValue; sFeatures7 = rawXML.getElementsByTagName ('Dbp') [6] .childNodes [0] .nodeValue; sFeatures8 = rawXML.getElementsByTagName ('Dbp') [7] .childNodes [0] .nodeValue; sFeatures9 = rawXML.getElementsByTagName ('Dbp') [8] .childNodes [0] .nodeValue; sScreenshot1 = rawXML.getElementsByTagName ('Ss') [0] .getElementsByTagName ('U') [0] .childNodes [0] .nodeValue sScreenshot2 = rawXML.getElementsByTagName ('Ss') [1] .getElementsByTagName ('U ') [0] .childNodes [0] .nodeValue sScreenshot3 = rawXML.getElementsByTagName (' Ss ') [2] .getElementsByTagName (' U ') [0] .childNodes [0] .nodeValue sScreenshot4 = rawXML.getElementsByTagName ('Ss') [3] .getElementsByTagName ('U') [0] .childNodes [0] .nodeValue sScreenshot5 = rawXML.getElementsByTagName ('Ss') [4] .getElementsByTagName ('U') [0] .childNodes [0] .nodeValue sScreenshot6 = rawXML.getElementsByTagName ('Ss') [5] .getElementsByTagName ('U') [0] .childNodes [0] .nodeValue sScreenshot7 = rawXML.getElementsByTagName ('Ss') [6] .getElementsByTagName ('U') [0] .childNodes [0] .nodeValue sScreensh ot8 = rawXML.getElementsByTagName ('Ss') [7] .getElementsByTagName ('U') [0] .childNodes [0] .nodeValue sScreenshot9 = rawXML.getElementsByTagName ('Ss') [8] .getElementsByTagName ('U') [0] .childNodes [0] .nodeValue sCaption1 = rawXML.getElementsByTagName ('Ss') [0] .getElementsByTagName ('Cap') [0] .childNodes [0] .nodeValue sCaption2 = rawXML.getElementsByTagName (' Ss ') [1] .getElementsByTagName (' Cap ') [0] .childNodes [0] .nodeValue sCaption3 = rawXML.getElementsByTagName (' Ss ') [2] .getElementsByTagName (' Cap ') [0] .childNodes [ 0] .nodeValue sCaption4 = rawXML.getElementsByTagName ('Ss') [3] .getElementsByTagName ('Cap') [0] .childNodes [0] .nodeValue sCaption5 = rawXML.getElementsByTagName ('Ss') [4]. getElementsByTagName ('Cap') [0] .childNodes [0] .nodeValue sCaption6 = rawXML.getElementsByTagName ('Ss') [5] .getEle mentsByTagName ('Cap') [0] .childNodes [0] .nodeValue sCaption7 = rawXML.getElementsByTagName ('Ss') [6] .getElementsByTagName ('Cap') [0] .childNodes [0] .nodeValue sCaption8 = rawXML.getElementsByTagName ('Ss') [7] .getElementsByTagName ('Cap') [0] .childNodes [0] .nodeValue

В Windows Store есть больше, чем просто приложений, есть также обзоры и лоты из них. В настоящее время в Windows Store просматривается более 210 000 обзоров приложений. Эти обзоры поступают со всего мира, поэтому вам понадобятся некоторые коды стран, ваш удобный идентификатор приложения Dandy и обратите внимание на pn/1 в конце, вы обнаружите, что эта услуга возвращает только 10 отзывов на страницу, просто увеличивая это значение до pn/2, pn/3 и т. д. до тех пор, пока вы не исчерпаете отзывы.

var arrCounntryCodes = ["AE", "AR", "AT", "AU", "BE", "BG", "BH", "CA", "CH", "CL", "CN «C», «CR», «CY», «CZ», «DE», «DK», «DZ», «EE», «EG», «ES», «FI», «FR», «GB», «GR», «HK», «HR», «HU», «ID», «IE», «IL», «IN», «IQ», «IT», «JO», «JP «KW», «KZ», «LB», «LK», «LT», «LU», «LV», «LY», «MA», «MT», «MX», «MY», «NL», «NO», «NZ», «OM», «PE», «PH», «PK», «PL», «QA», «RO», «RS», «RU», «SA «SE», «SG», «SI», «SK», «TH», «TN», «TR», «TT», «UA», «US», «UY», «VE», "В.Н."];

https://services.apps.microsoft.com/4R/6.2.9200-1/1/en-US/m/US/Apps/f514d64b-8705-43b7-a400-c4f4f3dedfc0/Reviews/all/s/date/1/pn/1

Это один гораздо более описательный с именами элементов, поэтому я не вижу никакой необходимости дальнейших объяснений этого. Вы можете увидеть полное имя, отображаемое имя, изображение, которое пользователь выбрал для представления.

Далее мы можем сделать немного seaching ... https://services.apps.microsoft.com/search/6.2.9200-1/615/en-US_en-US/m/US/c/US/il/en-US/cp/10005001/query/cid/0/pf/1/pc/0/pt/x64/af/0/lf/0/s/0/2/pn/0?phrase=Software Разработчик

Здесь он получает немного загадочными снова, но теперь вы должны привыкнуть к нему. Вы можете получить идентификатор приложения из I элемента и взять его оттуда обратно в службу просмотра f514d64b-8705-43b7-A400-c4f4f3dedfc0

Так что у вас есть, основы вытягивать тонны информации из Windows Store, после чего вы сможете делать то, что вам нравится. Если вы сочтете это полезным и/или сделаете некоторые приложения, использующие эту информацию, имейте дополнительную информацию, чтобы поделиться или иным образом сообщите мне в комментариях.

Смежные вопросы