В случае недоступности сети, хранение некоторой важной информации в базе данных sqlite и файла во внутреннем хранилище. Когда сеть доступна, она будет синхронизироваться с сервером в фоновом режиме.
Но когда пользователь выполняет очистку данных, он удаляет базу данных и файл, хранящийся во внутренней памяти. Из-за этого я сталкиваюсь с большой потерей данных.
Я уже ищу, как отловить четкие данные события и выпустил ниже вопросы: -
Также я не могу хранить эти данные на внешнем хранилище, потому что пользователи могут легко получить к ним доступ с помощью файловых менеджеров, и они могут удалить их вручную.
Мой вопрос таков:
Как я могу предотвратить удаление моих автономных данных?
Есть ли способ сохранить автономные данные в безопасном месте и получить доступ к ним только через приложение?
Пожалуйста, предложите мне любое возможное решение для этого случая.
заранее спасибо
Как я могу предотвратить удаление моих автономных данных?
Ты не можешь Это пользовательское устройство, а не ваше, и поэтому это не ваши данные - это пользовательские данные. Пользователь может делать то, что хочет пользователь.
Есть ли способ сохранить автономные данные в безопасном месте и получить доступ к ним только через приложение?
Внутреннее хранилище предотвращает прямой доступ к вашим файлам со стороны пользователя или других приложений. Это не мешает пользователю избавиться от этих файлов, либо с помощью "очистки данных", либо путем удаления вашего приложения.
Можем ли мы отключить событие Очистить данные для моего приложения?
На самом деле, нет. В некоторых версиях Android вы можете получить контроль, когда пользователь нажимает эту кнопку. Тем не мение: