Хранение файлов в БД никогда не рекомендуется. Скорее, они должны быть сохранены как Файл сами, и вы можете сохранить их путь в БД, ища и получая доступ к файлам.
Ваша точка зрения о времени ожидания сеанса слишком широка. Это может быть выполнено несколькими способами, например, «Выход из системы», «Срок истек», «Дело закрыто от пациента / Доктора и т. Д.» c.
. Вы можете попробовать эти шаги, если посчитаете их подходящими:
- После того, как врач выберет документы для сохранения, загрузите и сохраните их во внутренней памяти вашего приложения. Одновременно сохраните их соответствующий путь и загрузите метку времени в таблице БД для дальнейшего использования.
- Если ваши файлы конфиденциальны и не должны читаться вне вашего приложения, вы можете либо зашифровать их с помощью алгоритма шифрования, а затем сохранить их на устройстве. Вы также можете сохранить их в разных расширениях и со случайными именами, чтобы в дальнейшем обычным пользователям было сложно извлекать их из устройства. Вы должны будете расшифровать их во время просмотра.
- Если вы считаете, что данные в файле могут быть проанализированы и необработанные (текстовые) данные могут быть извлечены, вы также можете попробовать реализовать таблицу БД и сохранить такую информацию в самой БД. В таком случае файлы не будут сохраняться на устройстве.
- Теперь у вас есть контент (будь то в файловой системе или в БД), и ваша следующая задача - удалить его после завершения сеанса. over.
- Для случая LogOut, просто удалите все доступные данные (как из файловой системы, так и из БД), очистив все.
- Для доктора Удаление дела Вы можете удалить все файлы для выбранный случай с устройства. Эта информация может быть легко сохранена в таблице БД.
- В случае, когда пациент удаляет / закрывает, вам нужно будет внедрить службу уведомлений Pu sh, где ваш сервер отправит команду удаления на устройство. Получив уведомление о приложении, вы можете выполнить те же действия.
- По истечении срока, самый простой лог c заключается в проверке, каждый день в определенное время или каждый раз, когда ваше приложение открывается , для всех файлов, которые имеют временную метку, имеющую 7 дней старше, чем сегодняшняя дата. Обратите внимание, что отметка времени и информация о файле хранятся в БД.
- Для проверки каждый день в определенное время, вам нужно будет внедрить
AlarmManager
, который будет запускать фоновую службу для выполнения задачи.
Примечание: Возможны и другие способы выполнения такой конкретной задачи c, однако это наиболее простые и широко используемые подходы.