StoreKit: могу ли я предложить пользователю бесплатную загрузку для продукта по его выбору, который обычно стоит? - PullRequest
2 голосов
/ 14 мая 2011

Мне скоро придется реализовать функциональность StoreKit, и мне было интересно ... есть ли способ также предложить пользователю продукт бесплатно один раз, например, в качестве подарка для первого использования приложения?

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

Я также открыт для обходных путей, например, может получить что-то похожее на идентификатор Apple или около того, чтобы иметь возможность хранить его на сервере. Я знаю, что мог бы также использовать [[UIDevice currentDevice] uniqueIdentifier], но я хочу, чтобы у пользователя был этот первый бесплатный продукт на всех его устройствах, и ТОЛЬКО ОДИН.

Есть ли способ получить (A) и (B)?

1 Ответ

1 голос
/ 14 мая 2011

Инфраструктура Apple In-App Purchase (и, соответственно, StoreKit) не поддерживает бесплатный контент.

Но ничто не мешает вам предоставлять бесплатный контент через ваши собственные механизмы, как вы и предполагаете.Вы должны были бы сделать все отслеживание самостоятельно с точки зрения запоминания идентификаторов устройств на сервере где-нибудь и отметки этого устройства! = User, так что вы пропустите некоторые крайние случаи.

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

(Прежде чем создавать инфраструктуру для этого, вы должны дважды проверить соглашение / контракты с разработчиками на этот материал. Вы не обойдете здесь поток доходов Apple, что хорошо, но то, о чем вы говоритео может быть достаточно необычным, чтобы поднять с ними флаг с точки зрения согласованности опыта, если ничего больше.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...