Android - SharedPreferences - Atualização do App [Dúvida] - Stack Overflow em Português
Eu tenho um programa xpto na versão 9.0.8 e, nessa versão, eu adicionei uma SharedPreference que armazena um valor correspondente a versão atual do app para realizar algumas tarefas.
Quando eu for atualizar esse programa para a versão 9.0.9 em um dispositivo que continha a versão 9.0.8, a tag correspondente ao valor da versão (9.0.8) permanecerá salvo na memória do aparelho?
perguntada 18/06/19 às 14:22
O SharedPreferences é planejado para que armazene informações do aplicativo, e não de sua versão, sendo assim, teríamos que fazer login a cada atualização em um aplicativo, caso este guarde informações de usuário. Sendo assim, mudar versão não altera em nada os dados armazenados. – Assis Duarte 18/06/19 às 14:28
Eu armazenaria a versão atual do aplicativo para automatizar algumas tarefas, essa verificação seria feita apenas uma vez, por isso capturar a versão do App seria útil no meu caso. – Pedro Baraldini 18/06/19 às 14:31
Bom, ai você terá que fazer a verificação ao iniciar a Activity principal, que vai ser iniciada ao iniciar o app, a qual buscará o BuildConfig e comparará com a informação no SharedPreference. – Assis Duarte 18/06/19 às 14:35
Muito obrigado pela ajuda Assis. – Pedro Baraldini 18/06/19 às 15:52
De nada Pedro, espero ter ajudado. – Assis Duarte 18/06/19 às 16:20
Então, ela ficará salva sim, porém pode ter algum erro desconhecido e ela não será salva. Comigo isso nunca ocorreu nas apis novas.
Tem que levar em consideração os mesmos package name, e também o mesmo nome atribuído a sharedpreferences.
Apartir da Api 23 é possível deixar de maneira explícita o backup dos dados para isso inclua no manifest, dentro de application: