SharedPreferences no Android, Entendendo e Utilizando
(17290) (13)
CategoriasAndroid, Design, Protótipo
AutorVinícius Thiengo
Vídeo aulas186
Tempo15 horas
ExercíciosSim
CertificadoSim
CategoriaEngenharia de Software
Autor(es)Vlad Khononov
EditoraAlta Books
Edição1ª
Ano2024
Páginas320
Tudo bem?
No vídeo acima é apresentado o que é e como utilizar a API SharedPreferences no Android.
Está que é uma API de armazenamento de dados bem simples e muito útil quando precisamos salvar, em persistência local, dados primitivos (long, int, short, char, double, float, boolean, String) que não sejam muito dinâmicos.
A API SharedPreferences é na verdade uma interface de trabalho, nativa do Android, para armazenamento de dados primitivos em um arquivo XML interno, arquivo de responsabilidade do aplicativo. A SharedPreferences API é a maneira mais simples de persistir em aplicativo pequenas quantidades de dados.
É isso mesmo: pequenas quantidades de dados, sendo todos primitivos (é, eu sei, String não é primitivo, mas é exceção aqui).
De qualquer forma, a SharedPreferences API é uma das principais APIs nativas do Android. Independente do seu nível como desenvolvedor Android, é importante que você a domine, pois certamente você precisará, em mais de um projeto, persistir dados simples para que determinados algoritmos de domínio funcionem como esperado.
Em meu livro Receitas Para Desenvolvedores Android, no capítulo um, tem um "algoritmo receita" para avaliação de aplicativo na Google Play Store, algoritmo que gira todo em torno da SharedPreferences API.
Para um armazenamento local mais robusto você pode seguramente utilizar a API SQLite, própria para isso: armazenamento local de grande quantidade de dados, podendo até mesmo armazenar objetos complexos.
Apesar de anteriormente eu ter mencionado que o banco de dados XML gerado, com o uso da SharedPreferences API, é de responsabilidade do aplicativo host, na verdade é possível sim o uso da mesma base de dados XML entre aplicações Android distintas que trabalham com a API SharedPreferences.
Porém essas aplicações têm de ter o mesmo User ID que o núcleo Linux (sistema Android) cria para cada aplicação, neste caso, para ter o mesmo User ID, o programador teria de fazer essa alteração na "unha", no AndroidManifest de alguma das aplicações, colocando o mesmo User ID da outra aplicação.
Quanto as constantes de modo de acesso, MODE_MULTI_PROCESS e MODE_PRIVATE. A constante MODE_PRIVATE é a constante padrão a ser utilizada, constante que indica que apenas aplicações de mesmo User ID podem acessar a base de dados XML criada no app host com o uso da SharedPreferences API.
A constante MODE_MULTI_PROCESS indica a possibilidade de acesso, ao banco de dados XML criado pela SharedPreferences API, em mais de um processo ao mesmo tempo.
É importante não confundir "processos diferentes" com "aplicações diferentes", pois, pelo menos em meus testes práticos, a aplicação que não é host da base de dados XML criada via SharedPreferences API, mesmo a base tendo sido criada com MODE_MULTI_PROCESS. Está aplicação cliente, para ter acesso à base XML, ainda deve ter o mesmo User ID da aplicação host da base.
Note que os métodos getPreferences() (de Activity) e getSharedPreferences() (de Context), apesar de terem um tipo de acesso diferente, podem sim acessar os mesmos arquivos XML criados via SharedPreferences API.
Antes de finalizar, vou deixar logo abaixo alguns links de outros conteúdos do Blog, acompanhados de vídeos, que lhe colocarão em dia com o que há de novo no mundo do desenvolvimento Android:
- Kotlin Android, Entendendo e Primeiro Projeto;
- Android Studio: Instalação, Configuração e Otimização;
- Android Mobile-Commerce, Apresentação e Protótipo do Projeto.
E caso você tenha o desejo de aprender a criar apps Android, ou evoluir nesta área, também com o conteúdo gratuito do Blog e canal, então não deixe de acessar a lista de estudos em: Estudando Android - Lista de Conteúdos do Blog.
Não esqueça de se inscrever 📫na lista de e-mails do Blog para receber os conteúdos Android em primeira mão.
Se inscreva também no canal do Blog no YouTube para acompanhar as últimas novidades disponibilizadas em vídeo.
Surgindo dúvidas ou dicas, pode enviar abaixo na área de comentários que logo eu lhe retorno.
Obs. : o link para download do projeto apresentado em vídeo se encontra logo abaixo no artigo, na seção "Download".
Abraço.
Eclipse IDE vs Android Studio IDE
Apesar de o conteúdo da vídeo aula acima estar utilizando o Eclipse IDE 😱, tudo que é apresentado, tanto a parte teórica quanto a parte prática, é ainda válido nos dias de hoje com o desenvolvimento Android utilizando o Android Studio 😁.
Ou seja, independente da linguagem oficial (Java, Kotlin, C ou C++), IDE ou framework que você esteja utilizando, o conteúdo acima é ainda muito útil.
AndroidX
Apesar do conteúdo sobre a API SharedPreferences ainda estar atual e ser um grande diferencial para qualquer nível de desenvolvedor Android.
Apesar disso eu também recomendo, assim que finalizado o projeto em sua própria instalação de IDE, que você o migre para o AndroidX.
Algo que pode ser feito com poucos cliques, como apresentado no tutorial a seguir: Migrar para o AndroidX.
Fontes
SharedPreferences - documentação oficial Android
OnSharedPreferenceChangeListener - documentação oficial Android
Comentários Facebook