Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
#1

Разблокировка функций в приложении - Программирование Android

30.12.2015, 13:17. Просмотров 194. Ответов 5
Метки нет (Все метки)

Допустим купили в моем приложении допфункционал. Само приложение в целом работает офлайн. Биллинг вернул true, все хорошо, все счастливы, функции разблокированы.
Теперь закрываем и заново открываем приложение, как теперь разблокировать функции? Т.е. надо после покупки писать в SharedPreferences метку, а при открытии - ее считывать, но это слишком просто мне кажется. Или так и нужно?
И еще пример - интернет отключен, а функции должны работать. Тут без SharedPreferences никак.
Собственно если я правильно описал выше, то как эту метку/ключ получить?
Генерить как-то? Через AccountManager?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.12.2015, 13:17     Разблокировка функций в приложении
Посмотрите здесь:

Разблокировка телефона на Android 4.2 - Программирование Android
Добрый день уважаемый программисты. У меня телефон попал на блокировка!! Модель мой телефон Fly IQ4410 Quad Android 4.2.1. Как...

По поводу EditText разблокировка - Программирование Android
Здравствуйте, не могу понять, блокирую editText следующим образом editText6.setFocusable(false); editText6.setLongClickable(false); ...

Новости в приложении - Программирование Android
Всем доброго времени суток. Подскажите пожалуйста как реализовать задачу. Необходимо создать приложение в котором можно будет просматривать...

Звук в приложении - Программирование Android
Добрый вечер, Уважаемые. Писал приложение и столкнулся с проблемой. Программка должна при нажатии на кнопку, запускать музыку из файла,...

Баг в приложении - Программирование Android
Здравствуйте , нужна помощь в отладке приложения. Вот такая история у меня , обратился к разработчику , которому 5000руб перевел на...

Чат в приложении - Программирование Android
Здравствуйте! Работаю над идеей для нового приложения и возникло пару "концептуальных" вопросов. Возможно не по адресу, но буду рад...

Видео в приложении - Программирование Android
Как сделать активити с видео или чтобы проигрывалось с помощью приложения ютуб или прям в моем приложении?

Https в приложении - Программирование Android
Приветствую! Подскажите, пожалуйста, как вы реализуете в своих приложениях https подключения. Спасибо!

Увеличение в приложении - Программирование Android
Добрый день! (Кому день, кому вечер) У меня есть вопрос. Как сделать увеличение страницы в приложении? Заранее, спасибо

Анимация в приложении - Программирование Android
Доброго времени суток. Коллеги. Реализовал анимацию при нажатии на ImageView, эта же вьюшка есть кнопка, но при нажатии меня перекидывает...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,648
Завершенные тесты: 1
30.12.2015, 13:44     Разблокировка функций в приложении #2
Rube, а зачем что-то генерить? Просто булево хранить в SharedPreferencess. Без рута туда из другого приложения не попасть, а с рутом без проверки на сервере все равно не защитить.
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
30.12.2015, 14:36  [ТС]     Разблокировка функций в приложении #3
Spelcrawler, элементарно, т.к. тут любой дурачок догадается. Пропишет true в файле и все. А если прописать какой то набор абракадабры, который генерится в коде (на основе аккаунта?) то тут уже true не пропишешь ведь. Согласен?

Добавлено через 45 минут
Кажется я перемудрил чутка, т.к. getPurchases доступен и локально. Еще б это было написано где или я невнимательно читал. Нашел в просторах инета
Don't call mHelper.queryInventoryAsync(mGotInventoryListener). Instead call mHelper.queryInventoryAsync(false, mGotInventoryListener). If you debug into the IabHelper code you'll see that mService.getPurchases() will be called whereas mService.getSkuDetails() will not be called if you set the flag to false. If you omit the flag then it will be set to true by IabHelper. getPurchases() successfully queries the local cache of purchased items even when your device has no network connection, and even across device reboots.
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,648
Завершенные тесты: 1
30.12.2015, 14:55     Разблокировка функций в приложении #4
Rube, ну тут надежность тоже никакая, всякие лакипатчеры и т.д. ломают без проблем.
Rube
911 / 559 / 88
Регистрация: 13.02.2014
Сообщений: 2,070
30.12.2015, 15:04  [ТС]     Разблокировка функций в приложении #5
Согласен, а если объединить оба метода?.
True получаем из getPurchases. Хеш я получил из аккаунта, записал в преференс. Тогда тут засада если пользователь удалит данные.
Spelcrawler
526 / 496 / 111
Регистрация: 12.03.2014
Сообщений: 1,648
Завершенные тесты: 1
30.12.2015, 16:53     Разблокировка функций в приложении #6
Цитата Сообщение от Rube Посмотреть сообщение
Тогда тут засада если пользователь удалит данные.
Ну можно дефолтное значение сделать какое нибудь определенное, и если оно вернулось запросить покупки, проверить и записать уже нормальное значение куплено или нет.
Yandex
Объявления
30.12.2015, 16:53     Разблокировка функций в приложении
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru