Você está na página 1de 2

STORAGE:

DATABASE:
Para executar qualquer opera��o no banco de dados se ele pode ser lido ou gravado,
voc� deve primeiro obter a refer�ncia
ao banco de dados. O c�digo abaixo fornece refer�ncia ao banco de dados JSON top
node. A partir daqui, voc� precisa usar
os nomes de n� filho para avan�ar ainda mais.

DatabaseReference mDatabase = FirebaseDatabase.getInstance().getReference();

1. CRUD:

Inser��o: Utiliza��o do metodo setValue na referencia que desejar inserir


elementos, como inserir objetos em um n�
exclusivo?

DatabaseReference mDatabase =
FirebaseDatabase.getInstance().getReference("users");
String userId = mDatabase.push().getKey();
User user = new User("Jo�o Pedro", "joaopedro@infnet.edu.br");
mDatabase.child(userId).setValue(user);

OBS: Em geral, o ID do usu�rio deve ser adquirido atrav�s da implementa��o da


Firebase Auth em seu aplicativo, que lhe d� a
senha que atua como identifica��o do usu�rio.

Leitura de Dados: Para ler os dados, voc� deve anexar ValueEventListener () �


refer�ncia do banco de dados. Este evento
ser� acionado sempre que houver uma altera��o nos dados em tempo real. Em
onDataChange () voc� pode executar as opera��es
desejadas em novos dados.

Atualizando dados: Para atualizar dados, voc� pode usar o mesmo m�todo setValue (),
passando o novo valor. Voc� tamb�m
pode usar updateChildren () passando o caminho para atualizar dados sem perturbar
outros dados de n�s secund�rios.

Eliminar dados: Para excluir dados, voc� pode simplesmente chamar o m�todo
removeValue () para a refer�ncia do banco
de dados. Voc� tamb�m pode passar do m�todo null to setValue () que faz a mesma
opera��o de exclus�o.

2. Seguran�a e Regras:

Tais regras ir�o atuar em uma camada de seguran�a no servidor antes de executar
qualquer opera��o CRUD. Por padr�o, as
regras permitem ao usu�rio executar a opera��o de leitura e grava��o somente ap�s a
autentica��o.

Voc� tamb�m pode usar essas regras para validar dados antes de inserir no banco de
dados. Por exemplo, as regras
abaixo valem o nome para ser inferior a 50 caracteres e o e-mail para ser v�lido
usando a express�o regular de e-mail.

"users": {
"$user": {
"name": {
".validate": "newData.isString() && newData.val().length < 50"
},
"email": {
".validate": "newData.isString() && newData.val().matches(/^[A-Z0-
9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,4}$/i)"
}
}
}

Offline- Os apps do Firebase funcionam mesmo se o app perder temporariamente a


conex�o de rede. Al�m disso, o Firebase
oferece ferramentas para persist�ncia local de dados (saindo do app e voltando),
gerenciamento de presen�a e tratamento
de lat�ncia.

� poss�vel ativar a persist�ncia em disco com a linha de c�digo:


FirebaseDatabase.getInstance().setPersistenceEnabled(true);

Ao ativar a persist�ncia, quaisquer dados que o cliente do Firebase Realtime


Database sincronizar on-line persistir�o
no disco e estar�o dispon�veis off-line, mesmo quando o usu�rio ou o sistema
operacional reiniciar o app. Isso significa
que o app funciona como se estivesse on-line usando os dados locais armazenados no
cache. Os retornos de chamada do listener
continuam a ser acionados para atualiza��es locais (em uma fila, para quando a
conex�o for restaurada).

Quando a persist�ncia � ativada, essa fila tamb�m � mantida no disco para que todas
as grava��es estejam dispon�veis quando
o usu�rio ou o sistema operacional reiniciar o app.

-- Continues at next chapter ... --

Você também pode gostar