Recherche…


Remarques

Cette section fournit une vue d'ensemble de la base de données firebase et des raisons pour lesquelles un développeur peut vouloir l'utiliser.

Il devrait également mentionner tous les grands sujets dans la base de données firebase, et établir un lien avec les sujets connexes. La documentation de la base de données firebase étant nouvelle, vous devrez peut-être créer des versions initiales de ces rubriques connexes.

Versions

Platform SDK Version Date de sortie
Firebase JavaScript SDK 3.7.0 2017-03-01
Kit de développement logiciel Firebase C ++ 3.0.0 2107-02-27
SDK Firebase Unity 3.0.0 2107-02-27
Firebase iOS SDK 3.14.0 2017-02-23
Firebase Android SDK 10.2 2017-02-15
SDK Admin Node.js de Firebase 4.1.1 2017-02-14
Firebase Admin Java SDK 4.1.2 2017-02-14

Ajouter Firebase à votre projet Android

Voici les étapes nécessaires pour créer un projet Firebase et pour le connecter à une application Android.

Ajouter Firebase à votre application

  1. Créez un projet Firebase dans la console Firebase et cliquez sur Créer un nouveau projet .

  2. Cliquez sur Ajouter Firebase à votre application Android et suivez les étapes de configuration.

  3. Lorsque vous y êtes invité, entrez le nom du package de votre application .
    Il est important de saisir le nom du package utilisé par votre application. Cela ne peut être défini que lorsque vous ajoutez une application à votre projet Firebase.

  4. À la fin, vous allez télécharger un fichier google-services.json . Vous pouvez télécharger ce fichier à tout moment. (ce fichier est situé sous le paramètre de projet dans la console Firebase).

  5. Passer android studio View à Project et coller le fichier google-service.json sous le dossier app

L'étape suivante consiste à ajouter le SDK pour intégrer les bibliothèques Firebase dans le projet.

Ajouter le SDK

Pour intégrer les bibliothèques Firebase dans un de vos propres projets, vous devez effectuer quelques tâches de base pour préparer votre projet Android Studio. Vous l'avez peut-être déjà fait dans le cadre de l'ajout de Firebase à votre application.

  1. Ajoutez des règles à votre fichier build.gradle niveau build.gradle pour inclure le plug-in google-services :
buildscript {
    // ...
    dependencies {
        // ...
        classpath 'com.google.gms:google-services:3.1.1'
    }
}

Ensuite, dans le fichier Gradle de votre module (généralement app/build.gradle ), ajoutez la ligne de plug-in apply au bas du fichier pour activer le plug-in Gradle:

apply plugin: 'com.android.application'

android {
  // ...
}

dependencies {
  // ...
  compile 'com.google.firebase:firebase-core:9.4.0'//THIS IS FOR ANALYTICS
  compile "com.google.firebase:firebase-database:11.0.2" 
}

// BELOW STATEMENT MUST BE WRITTEN IN BOTTOM
apply plugin: 'com.google.gms.google-services'

Remarques:

  • Les données ne peuvent pas être en lecture / écriture sans authentification. Si vous le voulez sans authentification. Modifier les règles dans la console de base de données Firebase.

    {"rules": {".read": true, ".write": true}}

  • Ajouter une autorisation Internet dans Manifest

  • Mettre à niveau les services Google Play et Google Repository

Ecrire une valeur simple dans la base de données

D'abord, terminez l' installation et la configuration pour connecter votre application à Firebase. Ensuite, de n'importe où dans votre classe, vous pouvez écrire:

// Write a message to the database
FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference myRef = database.getReference("message");

myRef.setValue("Hello, World!");

Il va écrire Hello, Wold! dans le nœud du message , comme ci-dessous:

"your-project-parent" : {
    "message" : "Hello, World!"
}

Explication

FirebaseDatabase database = FirebaseDatabase.getInstance();

Le code ci-dessus affectera l'instance FirebaseDatabase dans l'objet de database pour une utilisation ultérieure.

DatabaseReference myRef = database.getReference("message");

Le code ci-dessus fera référence à l'objet myRef dans l'enfant "message" du parent de votre projet (dans cet exemple, il s'agit de "your-project-parent" ). C'est donc "your-project-parent/message"

myRef.setValue("Hello, World!");

Le code ci-dessus définira "Hello, World!" dans le chemin référencé par myRef

Mapper automatiquement le modèle personnalisé à la structure de données

Après avoir défini quelques données sur la base de données et avoir une structure composée de plusieurs noeuds comme celui-ci;

"user" : {
    "-KdbKcU2ptfYF2xKb5aO" : {
      "firstName" : "Arthur",
      "lastName" : "Schopenhauer",
      "userName" : "AphorismMan",
      "phone" : "+9022-02-1778",
      "gender": "M",
      "age" : 25
    },
    "-KdbQFjs9BDviuqQVHjY" : {
      "firstName" : "Werner",
      "lastName" : "Heisenberg",
      "userName" : "whereAmI",
      "phone" : "+9005-12-1901",
      "gender": "M",
      "age" : 75
    }
  }

vous pouvez classer les structures de données.

Création de classe

Créez une classe de modèle à définir sur la base de données.

@IgnoreExtraProperties
public class User {
    public String firstName;
    public String lastName;
    public String userName;
    public String phone;
    public String gender;
    public int age;

    public User() {
    }

    public User(String firstName, String lastName, String userName, String phone, String gender, int age) {
        this.firstName = firstName;
        this.lastName = lastName;
        this.userName = userName;
        this.phone = phone;
        this.gender = gender;
        this.age = age;
    }
}

Quelques points à retenir lors de la création d'une classe de modèle que vous souhaitez mapper sur vos données:

  1. Vous devez avoir un constructeur vide
  2. L'étendue des variables / champs doit être publique, de sorte que le DataSnapshot renvoyé par la base de données puisse accéder à ces champs. Si vous ne le faites pas, lorsque vous souhaitez obtenir des données, DataSnapshot ne peut pas accéder à votre modèle en rappel et cela entraînera une exception.
  3. Les noms des variables / champs doivent correspondre à ceux de votre structure de données.

Envoi à Firebase

Créer un objet utilisateur

User user = new User ( "Arthur","Schopenhauer","AphorismMan","+9022-02-1778","M",25)

et référence

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

Vous avez maintenant la référence de votre base de données. Créez un nœud user avec databaseReference.child("user") . Si vous faites .push() vos modèles trouveront des identifiants uniques créés aléatoirement comme ci-dessus, "-KdbKcU2ptfYF2xKb5aO", "-KdbQFjs9BDviuqQVHjY" .

databaseReference.child("user").push().setValue(user, new DatabaseReference.CompletionListener() {
            @Override
            public void onComplete(DatabaseError databaseError, DatabaseReference databaseReference) {
                Toast.makeText(getActivity(), "User added.", Toast.LENGTH_SHORT).show();

            }
        });

Si vous souhaitez définir vos données sous votre clé spécifique, faites-le avec .child("yourSpecificKey") au lieu de .push() .

databaseReference.child("user").child("yourSpecificKey").setValue(user,...



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow