#in-app-purchase #appcelerator #appcelerator-titanium #storekit #appcelerator-mobile
#покупка в приложении #appcelerator #appcelerator-titanium #storekit #appcelerator-мобильный
Вопрос:
Я изо всех сил пытаюсь понять пару проблем, связанных с покупками в приложении, автоматически возобновляемыми подписками и обработкой квитанций. Я хочу перечислить свои вопросы здесь и надеюсь, что есть кто-то снаружи, кто может дать некоторые ответы или разумные замечания по этим темам. Я застрял.
1) Что такое квитанции?Я понимал, что квитанция — это не что иное, как свидетельство успешной транзакции с Apple, которую вы получаете, если покупаете что-то в местном супермаркете. С точки зрения разработки приложений я бы сказал, что вы должны хранить квитанцию, полученную при успешной покупке, на своих серверах, а также на локальном устройстве. Потому что вы хотите подтвердить, что купили соответствующий продукт. Это правильно?
2) Что нужно сохранить?Что именно должно быть сохранено? Я работаю с Appcelerator Titanium (последняя версия) и для приложения на iOS 10 — это означает, что я также работаю с обернутым Storekit-API «TiStorekit», который предоставляет множество функциональных возможностей. Допустим, я получаю квитанцию, как мне получить к ней доступ? Существует evt.receipt
(evt = входящее событие) для получения информации о получении, но, например, не об истечении срока действия подписки, его там нет. Я также могу получить доступ storekit.receiptProperties
, там я могу получить список директив JSON, которые, как я думал, являются транзакциями. Теперь можно найти запись в этом списке, где transactionIdentifier
она совпадает с той, из evt.receipt
которой она была — тогда она кажется правильной, и я собрал свою информацию вместе. НО ПРАВИЛЬНО ЛИ ЭТО?
3) Как проверять / проверять квитанции?Внутри «TiStorekit» есть много функций для проверки / подтверждения вашей квитанции. Когда я должен это сделать и на основании какой квитанции? Тот, который я сохранил для пользователя, который должен быть действительным, и я должен проверить в Apple, если он все еще действителен?
4) ReceiptProperties
и получение от evt
, как упоминалось в вопросе 2, какие именно данные доступны storekit.receiptProperties
? И какова квитанция в событии (отправленная в transactionStateListener) в сравнении?
Для меня эта тема очень сложная. В принципе, вообще много документации, большинство из них непосредственно из собственных примеров Ojective-C / Swift, но кое-что также полезно для понимания того, что вам нужно делать. С точки зрения Titanium / Appcelerator это сложно, есть несколько примеров или кода от других людей, и я могу использовать их части, но эта реализация сильно связана с самим приложением, и вам не следует этого делать, если вы не знаете, какие данные вы обрабатываете и, в основном, ПОЧЕМУ.
Вот почему я надеюсь найти ответы здесь. Заранее большое спасибо.
Комментарии:
1. Много вопросов, и ни один из них не соответствует теме StackOverflow. Я рекомендую задавать их на tislack.org
2. Привет @RenePot, действительно, есть много вопросов. StackOverflow, как платформа для разработчиков, по-прежнему является подходящим местом, чтобы задать эти вопросы широкой публике разработчиков. Я задавал вопросы также на канале #helpme в TiSlack и надеюсь на некоторую помощь и там.
3. Stackoverflow предназначен для вопросов о коде. Вы также должны показать код, который вы пробовали. Также задавайте только 1 вопрос на вопрос в stackoverflow