Intereting Posts
WebView не загружает веб-страницу Android (Lollipop) EditText onFocus несколько раз срабатывает Идентификатор ячейки UTRAN, возвращаемый getCid () Android Studio не может импортировать проект: java.util.ArrayList не может быть добавлен в java.util.Map Android на virtualBox застревает после простоя Android ImageView – ширина заливки и изменение размера для поддержания соотношения сторон Является ли OAuth на мобильном телефоне с помощью прокси-сервера слишком много неприятностей? Удалять полосу прокрутки из программы ScrollView программно в Android Android: как удалить общие настройки в другом пакете Эмулятор Android вечно вечно во время загрузки Как реализовать покрытие с рециркуляцией Android Spanned, SpannedString, Spannable, SpannableString и CharSequence Распознавание изображений для приложения дополненной реальности Android Как следует форматировать (Android) / Chrome getUserMedia ()? Приложение неправильно настроено для использования услуг игровой игры Google

Лучшее место / место для хранения файла для периода трейла

Мне нужно иметь пробный период (7 дней) в моей заявке. Из этого я узнал, что вы можете это сделать, сохраняя постоянный файл, базу данных или общие предпочтения .

Где я могу хранить этот файл, чтобы пользователь не мог его видеть или удалять .

Если я поместил эту логику в Sharedpreference или файл с именем « data/data/packagename », когда приложение будет удалено, вся история будет потеряна.

Любые другие обходные пути / идеи?

Примечание: нет сервера, приложение работает локально без Интернета.

Я бы сказал, что лучшим решением будет шифрование вашего файла, а затем сохранение его в случайном месте. Таким образом, даже если у пользователя есть доступ к этому файлу, он, как минимум, может сказать, что это цель, и удалить его в любом случае. И Android отлично поддерживает шифрование.

Взгляните на них, чтобы вы начали:

Реализация Android Crypto

Разработчик Android: Crypto Package Summary

Вы можете хранить как скрытые, поэтому нет возможности удалить пользователь

См. Это

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

 android:manageSpaceActivity="YourStartingActivity" 

В теге приложения.

Теперь разместите приложение в папке базы данных или приложения. Это решение избавит вас от очистки данных приложения. Теперь для удаления. Сделайте широкоэкранный приемник, который запускается, когда любое приложение удаляется с устройства. Как только пользователь попытается удалить приложение, вы можете поймать его через приемник и предотвратить его. Этот широковещательный приемник может находиться в отдельном классе, таком как класс Watcher, который будет установлен с вашим приложением. Вы можете сделать это легко. Существует много примеров.