Skip to content

Most visited

Recently visited

navigation

Como salvar conjuntos de valor-chave

Caso você tenha uma coleção relativamente pequena de valores-chave para salvar, use as APIs SharedPreferences. Um objeto SharedPreferences indica um arquivo que contém pares de valores-chave e fornece métodos simples para ler e gravar. Cada arquivo SharedPreferences é gerenciado pela estrutura de trabalho e pode ser privado ou compartilhado.

Esta lição mostra como usar as APIs SharedPreferences para armazenar e recuperar valores simples.

Observação: As APIs SharedPreferences são usadas apenas para leitura e gravação de pares de valor-chave e não devem ser confundidas com as APIs Preference, que ajudam a criar uma interface do usuário para as configurações do seu aplicativo (embora usem SharedPreferences como implementação para salvar as configurações de aplicativo). Para obter mais informações sobre o uso de APIs Preference, consulte o guia Configurações.

Obter um identificador para preferências compartilhadas

É possível criar um novo arquivo de preferência compartilhada ou acessar um existente chamando um destes dois métodos:

Por exemplo: o código a seguir é executado dentro de um Fragment. Ele acessa o arquivo de preferências compartilhadas identificado pela cadeia de caracteres de recursos R.string.preference_file_key e abre-o usando o modo privado para que o arquivo possa ser acessado apenas pelo seu aplicativo.

Context context = getActivity();
SharedPreferences sharedPref = context.getSharedPreferences(
        getString(R.string.preference_file_key), Context.MODE_PRIVATE);

Ao nomear os arquivos de preferência compartilhada, você deve usar um nome que seja identificável exclusivamente para o aplicativo, como "com.example.myapp.PREFERENCE_FILE_KEY"

Como alternativa, caso precise apenas de um arquivo de preferência compartilhada para sua atividade, use o método getPreferences():

SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);

Atenção: Se você criar um arquivo de preferência compartilhada com MODE_WORLD_READABLE ou MODE_WORLD_WRITEABLE, qualquer outro aplicativo que conhecer o identificador do arquivo poderá acessar seus dados.

Gravar em preferências compartilhadas

Para gravar em um arquivo de preferência compartilhada, crie um SharedPreferences.Editor chamando edit() em SharedPreferences.

Transmita as chaves e os valores que deseja gravar com métodos como putInt() e putString(). Depois, chame commit() para salvar as alterações. Por exemplo:

SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putInt(getString(R.string.saved_high_score), newHighScore);
editor.commit();

Ler de preferências compartilhadas

Para recuperar valores de um arquivo de preferência compartilhada, chame métodos como getInt() e getString(), fornecendo a chave para o valor desejado e opcionalmente um valor padrão para retornar caso a chave não esteja presente. Por exemplo:

SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
int defaultValue = getResources().getInteger(R.string.saved_high_score_default);
long highScore = sharedPref.getInt(getString(R.string.saved_high_score), defaultValue);
This site uses cookies to store your preferences for site-specific language and display options.

Get the latest Android developer news and tips that will help you find success on Google Play.

* Required Fields

Hooray!

Browse this site in ?

You requested a page in , but your language preference for this site is .

Would you like to change your language preference and browse this site in ? If you want to change your language preference later, use the language menu at the bottom of each page.

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a one-minute survey?
Help us improve Android tools and documentation.