Может ли приложение Windows Phone одновременно включать функциональные возможности через Trial API для v7.1 и IAP для v8.0?
У меня есть бесплатное приложение для Windows Phone, которое в настоящее время предназначено для OS v7.1, так что оно будет работать как на WP7.8, так и на WP8. Я хочу создать дополнительную функциональность, которая будет моим "премиальным" контентом, за который я хочу платить пользователям.
Изначально я планировал сделать это платное приложение и предложить пробную версию с помощью Trial API, однако с тех пор я решил, что хочу сделать его доступным в виде "про-пакета" в приложении, в основном из-за маркетинговых соображений, потому что " Приложения Freemium лучше возвращаются разработчикам, чем Trials, и я хочу сохранить ярлык "бесплатное приложение" в Магазине.
Это становится проблемой, потому что 7.1 не содержит API-интерфейсы для покупок в приложении (IAP), а только в ОС v8.0.
Я мог бы сделать текущую версию "облегченной" версией и выпустить недавно скомпилированную "профессиональную" версию, однако я не хочу поддерживать два набора кода, заставлять моих пользователей идти и скачивать новую версию, терять отзывы и номера загрузок. и т. д. Это просто кажется не элегантным.
Я знаю, что могу нацеливать отдельные ОС со связанными проектами в одном и том же решении, но могу ли я включить Trial API в проект 7.1 и IAP в проект 8.0, предназначенные для одной и той же функциональности?
Если #1 верно, оно будет отображаться как платное приложение в Магазине WP7 и бесплатное приложение в WP8, или оно будет отображаться как платное приложение в обоих?
Есть какие-нибудь предложения о том, как я могу реализовать эту функцию лучше?
2 ответа
Windows Phone не имеет модели двойного ценообразования. Таким образом, у вас не может быть платного приложения для Windows Phone 7 при наличии бесплатного приложения в Windows Phone 8. В настоящее время у меня есть приложение, которое предназначено для Windows Phone 7, но добавляет функциональность Windows Phone 8, такую как LongListSeletor и In App Purchase. У меня есть два прикладных проекта в моем решении. Один для телефона 7 и один для телефона 8. Они оба используют одинаковые файлы кода, добавляя их в качестве ссылки. В проекте "Мой телефон 8" есть символ компиляции "WP8", определенный как в режиме выпуска, так и в режиме отладки. Когда я хочу сделать покупку приложения (для меня это удалить рекламу), я делаю так, как
#if WP8
// Do some logic here
#endif
Это позволяет использовать один и тот же код на обеих платформах, только одно приложение в магазине (одно нацеливание на телефон 7 и одно на телефон 8). Я согласен, что бесплатное приложение лучше, чем платное с пробным приложением, но если вы хотите, чтобы оно было оплачено для Phone 7, оно будет оплачено для Phone 8. Это одно из самых больших ограничений двух платформ ( на мой взгляд).
Это именно то, что я хотел сделать с приложением. Я до сих пор не понял, как я это сделаю.
Если вы хотите продолжить публикацию из одного xap, который работает в обеих системах, вы можете использовать In-App покупок (IAP) из вашего приложения 7.1 с использованием Reflection. Шаблон по сути "проверить, есть ли IAP, это? Отлично, используйте его".
Существует удобная оболочка, которая уже делает все это для вас, которую вы можете найти по адресу: http://code.msdn.microsoft.com/wpapps/WP8-Store-Wrapper-for-IAP-74f77f17