Limpando o banco de dados de aplicativos

Eu tenho um aplicativo Android que usa o banco de dados sqlite para armazenar dados de texto para um usuário específico. Os dados são lidos / gravados do / para o banco de dados a partir de um serviço que é executado periodicamente após cada n segundos. Minha exigência é limpar dados, dependendo da idade. Por exemplo, se o arquivo tiver mais de 24 horas, ele deverá ser excluído.

Verificar a idade do arquivo parece fácil, basta comparar a hora atual com a hora de criação do arquivo. O problema é:

onde devo colocar essa verificação e excluir o arquivo; dentro do aplicativo onCreate () ou quando o usuário efetua login / efetua logout? Qual seria o local ideal para desencadear essa lógica? Devo agendar um alarme quando o usuário efetuar login?

Devo excluir o arquivo ou simplesmente excluir as linhas? Se eu não acionar a lógica de limpeza de cache do login / logout, a exclusão do arquivo causará problemas, especialmente se o serviço ainda estiver tentando ler e gravar no banco de dados?

Conselho por favor.

Obrigado.