Eu tenho um aplicativo Android para salvar os detalhes de login, como nome de usuário e senha, por meio de que SharedPreferences
funciona bem, mas preciso remover todos os meus usados SharedPreferences
durante a desinstalação do aplicativo. Como fazer isso?
SavePreferences("one ", "");
SavePreferences("two", "");
LoadPreferences();
private void SavePreferences(String key, String value){
sharedPreferences = getSharedPreferences("TEST", MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString(key, value);
editor.commit();
}
private void LoadPreferences(){
sharedPreferences = getSharedPreferences("TEST", MODE_PRIVATE);
String strSavedMem1 = sharedPreferences.getString("MEM1", "");
String strSavedMem2 = sharedPreferences.getString("MEM2", "");
}
Quero remover isso SharedPreferences
quando meu aplicativo for desinstalado.
android
android-preferences
Shivcena
fonte
fonte
/dbdata/database/my.package/shared_prefs
. Não sei se é porque está enraizado ou porque é o Froyo. Não consegui testar com dispositivos mais novosRespostas:
SharedPreferences
é sempre excluído junto com a desinstalação do aplicativo.Quando você desinstala qualquer aplicativo, todas as alterações que o aplicativo fez em sua memória interna são revogadas, o que significa que seus arquivos SharedPreference, outros arquivos de dados, arquivo de banco de dados, aplicativo são removidos automaticamente pelo sistema operacional Android.
EDITADO: 29/04/15: para> = 21 API consulte a resposta de @Maher Abuthraa
fonte
O problema não é com preferências. É drasticamente o gerenciador de backup ! .. desde o android-23 por padrão, o backup como uma tarefa armazena os dados do aplicativo, incluindo preferências para nuvem. Posteriormente, ao desinstalar e instalar a versão mais recente, você provavelmente usará as preferências restauradas. Para evitar isso, basta adicionar ao seu manifesto (ou pelo menos ao manifesto de depuração):
Leia isto: http://developer.android.com/guide/topics/data/backup.html
Você também verá que se executar o Lint em
Android > Lint > Security
:É bom mencionar aqui que o processo de backup é como uma caixa preta .. você não sabe quando começa, e período entre as verificações ... então é melhor para o desenvolvimento desabilitá-lo.
==== Atualizar ====
Você pode ter problemas de fusão de manifesto após definir
allowbackup
parafalse
. Para corrigir esse problema, adicione:no elemento do aplicativo. Crédito para @ shahzain-ali
Alternativamente, você pode limpar o cache antes de desinstalar o aplicativo.
Espero que isso possa ajudar.
fonte
É estranho, mas encontrei a solução da seguinte maneira:
xmlns:tools="http://schemas.android.com/tools"
na tag de manifesto do arquivo Manifest.xmlandroid:allowBackup="false"
na tag do aplicativo do do arquivo Manifest.xmltools:replace="android:allowBackup"
na tag do aplicativo do arquivo Manifest.xmlManifest.xml arquivo deve ter a seguinte aparência.
Está feito.
fonte
android:allowBackup="false"
etools:replace="android:allowBackup"
ainda conseguindo minhas preferências, Alguma idéia de qual é o problema?O problema não é com preferências.
use este código para corrigi-lo ..........
fonte
A configuração
allowBackup="false"
desativa o aplicativo de backup e restauração.fonte
Preferências compartilhadas nem sempre são excluídas mais a partir do marshmallow. Adicione esta linha em seu manifesto: "android: allowBackup =" false ""
fonte