Можно ли использовать StoreKit (в покупке приложений) внутри статической библиотеки? - PullRequest
1 голос
/ 24 августа 2011

Я работаю над SDK, распространяемым в виде статической библиотеки, которую разработчики iOS могут использовать в своих приложениях. Я заинтересован в том, чтобы предлагать не потребляемый загружаемый и встроенный контент непосредственно пользователям через интерфейс, включенный в SDK. В идеале, когда пользователь покупает что-то из интерфейса моего SDK в одном приложении, он становится доступным для них в любом другом приложении, также использующем SDK. Кто-нибудь, имеющий опыт работы с StoreKit, знает, возможно ли использовать для этого платформу Apple In App Purchase? Буду ли я нарушать TOS от Apple, если я добавлю свою собственную в систему покупки приложений?

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

ТЛ; др

  1. Возможно ли вообще использовать StoreKit без идентификатора приложения или без идентификатора приложения (похоже, что это не так)?
  2. Наложит ли Apple какие-либо ограничения на реализацию пользовательских приложений (могу ли я нарушить Условия использования)?

1 Ответ

1 голос
/ 24 августа 2011

Извините, но я думаю, что ответ на два ваших вопроса будет НЕТ.

Для Q1:

Нет способа сделать это в SDK. Поскольку IAP нужен и идентификатор продукта, и идентификатор комплекта приложений, оба идентификатора являются уникальными. Это означает, что если один из ваших пользователей добавил идентификатор в свой iTunes Connect, никто другой не сможет использовать его снова. И вам также нужно знать личность пользователя. Это невозможно, так как Apple не хочет, чтобы разработчики делали это.

Конечно, вы можете идентифицировать устройства, используя некоторую уникальную идентификацию устройств, но вы по-прежнему не можете идентифицировать конкретного пользователя. А из iOS 5 также будет удален API для получения UUID, очень сложно идентифицировать конкретное устройство.

Если вы делаете то, что Apple не хочет, чтобы разработчики делали, я не уверен, что произойдет.

Единственное, что вы можете сделать, это:

Позвольте пользователю и разработчику зарегистрироваться на вашем сервере.

Разработчик должен сообщить вам, какой идентификатор он использует для вашего контента в своем приложении, и каков его идентификатор пакета приложения.

После того, как пользователь купил ваш контент, ваш SDK должен использовать идентификатор приложения и идентификатор продукта IAP, чтобы узнать, что это за контент, а затем сохранить информацию на вашем сервере.

После входа пользователя в другое приложение ваш SDK должен проверить информацию на сервере. Предоставить контент пользователю.

Звучит сложно ...

Для Q2:

Согласно руководству Apple по рассмотрению,

 11. Purchasing and currencies

 11.1 Apps that unlock or enable additional features or functionality with mechanisms other than the App Store will be rejected

Также невозможно предоставить собственную платежную систему в App Store.

Итак, в основном ответ на ваши вопросы ... НЕТ ...

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