Casa > O > O Que É "Preferências Compartilhadas" No Android E Quando Ele É Usado?

O que é "preferências compartilhadas" no Android e quando ele é usado?

Android permite o armazenamento de dados em vários formatos. Mas, nós fazemos o gerenciamento da sessão do usuário androide usando Preferências Compartilhadas, só porque as preferências compartilhadas funcionam na base do Key-Pair e respondem rapidamente.

main-qimg-05ef0fb29ed36ce6973b1e03e5d347af

A sessão é útil quando você quer armazenar dados do usuário globalmente em toda a aplicação. Isto pode ser feito de duas maneiras. Uma é armazená-los em variáveis globais e a segunda é armazenar os dados em preferências compartilhadas.

O problema com o armazenamento de dados na variável global é que os dados serão perdidos quando o usuário fechar a aplicação. Mas o armazenamento dos dados em preferências compartilhadas será persistente mesmo que o usuário feche a aplicação.

Android Shared Preferences Overview

Android armazena as configurações Shared Preferences como um arquivo XML na pasta shared_prefs. SharedPreferences é específico da aplicação. Ou seja, os dados são perdidos ao executar uma das seguintes opções:

<
  • on desinstalando a aplicação
  • on limpando os dados da aplicação (através de Settings>>>Apps)
>p>Following são os modos de operação aplicáveis:

Na sintaxe acima, o primeiro parâmetro é a chave e o segundo é o MODE. Além do modo privado, há outros modos disponíveis que estão listados abaixo:

  • MODE_PRIVATE: o modo padrão, onde o arquivo criado só pode ser acessado pela aplicação de chamada.
  • MODE_WORLD_READABLE: Este modo permite que outras aplicações leiam as preferências.
  • MODE_WORLD_WRITEABLE: Criar arquivos graváveis no mundo é muito perigoso, e provavelmente causará falhas de segurança nas aplicações.
  • MODE_MULTI_PROCESS: Este método irá verificar a modificação das preferências mesmo que a instância de preferências compartilhada já tenha sido carregada.
  • MODE_APPEND: Isto irá anexar as novas preferências com as preferências já existentes.
  • MODE_ENABLE_WRITE_AHEAD_LOGGGING: Bandeira de abertura da base de dados. Quando estiver definido, ele habilitará o registro write-ahead por padrão.

Initialization

  1. SharedPreferences pref = getApplicationContext().getSharedPreferences("MyPref", 0); 
  2. Editor editor = pref.edit(); 

Storing Data

All the primitive data types like booleans, floats, ints, longs, and strings are supported. Call editor.commit() in order to save changes to shared preferences…

  1. editor.putBoolean("key_name", true); // Storing boolean - true/false 
  2. editor.putString("key_name", "string value"); // Storing string 
  3. editor.putInt("key_name", "int value"); // Storing integer 
  4. editor.putFloat("key_name", "float value"); // Storing float 
  5. editor.putLong("key_name", "long value"); // Storing long 
  6.  
  7. editor.apply(); // commit changes 

Clearing or Deleting Data

If you want to delete from shared preferences you can call remove(“key_name”) to delete that particular value. If you want to delete all the data, call clear()...(more)

De Bette-Ann

Os elefantes pertencem à era dos dinossauros? :: Como eliminar uma actividade numa aplicação de actividade