2010-10-11 3 views
3

есть некоторые приложения, которые, похоже, узнают пользователя iTunes для iPhone. Мне нужно разработать приложение, которое поддерживает In-App Purchase в виде «подписки». Apple хочет, чтобы мое приложение предоставляло подписку на устройства каждого пользователя (iPhone, iPod, iPad). Для этого я могу создать серверную систему подписки, которая связывает подписку с видом только что созданного пользователя внутри моего сервера. Чтобы сделать что-то лучше, я полагаю, что если мое приложение сможет узнать пользователя iTunes, который подписывает мою услугу на iPhone, он может хранить его на моем сервере. Если пользователь загружает приложение на iPad, мое приложение может попросить у сервера понять, является ли текущий пользователь iPad тем же самым, что и подписка на мою услугу на iPhone, и, если это так, может предоставить услугу и на iPad. Итак, может ли мое приложение узнать, что пользователь iTunes подписывает мой сервис (с покупкой в ​​приложении)?iPhone - Как распознать пользователя iTunes моего приложения

Заранее спасибо

ответ

2

Ответ: Я НЕ МОЖЕТ! , поэтому единственный способ управлять подписками на нескольких устройствах - это создать «регистрацию подписки», которая позволяет пользователю регистрировать свою подписку, чтобы он мог войти в систему с других устройств и восстановить подписку.

+0

Оскар, вы уже поработали над этой темой? Как вы сказали в другом месте в комментарии, подписки не восстанавливаются автоматически. В документах Apple указано, что вы должны предоставить свой собственный механизм для «восстановления этих транзакций на устройства пользователя». Как это возможно, поскольку вы не знаете, какие другие устройства принадлежат пользователю? Если вы поддерживаете подписную учетную запись в своей собственной системе, не имея возможности однозначно идентифицировать пользователя и его устройства, нет ничего, что помешало бы пользователю делиться своими учетными данными с кем-либо еще, что позволит неавторизованным устройствам получить доступ. –

+0

Привет, Оскар, как вы в конечном итоге столкнулись с такой проблемой? Вам нужно было внедрить собственную систему управления пользователями, чтобы обеспечить восстановление подписки на нескольких устройствах? :(Я столкнулся с той же проблемой, что и Apple не хочет, чтобы я использовал автоматическое продление подписки и перенаправил меня на «базовую» подписку ....: / – yonel

-1

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

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

От IAP Programming Guide:

Для восстановления транзакций, ваш приложение вызывает метод restoreCompletedTransactions Очередь платежа. Для каждой покупной покупки, которую был ранее завершен, приложение Store создает новую транзакцию восстановления . Операция восстановления включает в себя копию оригинальной транзакции . Ваши приложения процессов восстановления транзакций пути получением первоначальной сделки и использовать его, чтобы разблокировать купленный содержания

+0

Как указано в Руководстве по программированию IAP, это справедливо только для «неконкурентоспособной покупки». Мне нужно управлять «покупкой подписки», поэтому мне нужно реализовать этот механизм самостоятельно. –

+0

Абонентский продукт также является неприемлемым. Восстановление закупок для них тоже –

+0

Вы уверены? из руководства по программированию IAP я читал: «Подписки и расходные материалы автоматически не восстанавливаются Store Kit. Чтобы восстановить эти продукты, вы должны записывать транзакции на своем собственном сервере при их покупке и предоставлять свой собственный механизм для восстановления этих транзакций устройства пользователя ". –

0

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

Вам нужно будет выяснить способ использования анонимного идентификатора транзакции.

+0

Как уже говорилось ранее, ему необходимо «предоставить свой собственный механизм для восстановления этих транзакций на устройства пользователя». Поэтому я могу создать систему пользователя/пароля для привязки к каждой транзакции, но это действительно уродливо! –

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