У меня есть приложение, которое имеет расходную IAP. Это IAP, который пользователи потребляют в течение времени, что-то вроде IAP, имеет 100 пунктов, тогда как пользователи могут использовать 10 сегодня и 50 завтра, поэтому у пользователя будет 100-10-50 = 40 точек для дальнейшего использования. Приложение выдает начальные точки 100, чтобы пользователи могли попробовать. Я использовал UserDefaults для записи, и он отлично работает, ИСКЛЮЧИТЕЛЬНО, когда пользователь удаляет приложение - когда я тестировал два метода: 1, удалить и переустановить, я снова получил 100 пунктов; 2, я перезапустил язык iPhone и снова получил 100 очков. Это означает, что пользователи не пойдут слишком много, чтобы получить начальные 100 баллов, что в основном остановит мой IAP от продажи.Является ли Ios Keychain подходящим для моей проблемы с IAP?
В настоящее время у меня нет внешнего сервера для записи/проверки IAP. Я не хочу пуленепробиваемый механизм для предотвращения взлома. Все, что я хочу, это то, что может выжить, удалить/переустановить. После чтения страниц stackoverflow и я узнал, что 1, keychain выдержать удаление/переустановить, 2, он обычно используется для пароля, 3, некоторые разработчики используют его для хранения флагов IAP (купил IAP или нет), но 4, я не знаю если нормально хранить NSNumber (40 пунктов осталось в приведенном выше примере). Интересно, подходит ли брелок для моего дела.
Если брелок в порядке, чтобы хранить NSNumber, у кого-нибудь есть код для обмена? Благодарю.
Обновления с помощью Lockbox: Почему я получил ошибку Apple Mach-O-Linker: Objc-class-ref в ViewController.o? Что-то связано с ARC? Я видел, что Granoff (разработчик Lockbox) сказал, что ARC позаботился об этом автоматически. То, что я сделал, это добавить файлы Lockbox.h и .m в мой проект и импортировать в мое приложение. После этого приложение не запускается из-за ошибки. Однако, когда я попробовал использовать блок-проект Lockbox, он работает. Любое понимание? Благодарю.
ошибка Lockbox я получил:
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_Lockbox", referenced from:
objc-class-ref in ViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Я добавил рамки "Безопасность". После добавления рамки безопасности я скопировал файлы Lockbox.h и .m в свое приложение. В файле ViewController.m, где я планирую использовать методы блокировки, я добавил «#import» Lockbox.h "". Я мог бы выполнить этот шаг без ошибок. Затем я добавил следующую строку: if ([Lockbox stringForKey: mylockboxstring]! = Nil) {} Я получил ошибку, показанную выше.
Я предполагаю, что у Apple нет проблем с этим, не так ли? Я попробую это сегодня и приму ваш ответ, если он сработает. Благодаря! –
Нет, не проблема. API-интерфейсы Keychain являются общедоступными. Я использовал это в нескольких приложениях, все в App Store. –
Почему я получил ошибку Apple Mach-O-Linker: Objc-class-ref в ViewController.o? Что-то связано с ARC? Я видел, что Granoff (разработчик Lockbox) сказал, что ARC позаботился об этом автоматически. То, что я сделал, это добавить файлы Lockbox.h и .m в мой проект и импортировать в мое приложение. После этого приложение не запускается из-за ошибки. Однако, когда я попробовал использовать блок-проект Lockbox, он работает. Любое понимание? Благодарю. –