[JAVA] Facile à utiliser Cloud Firestore (Android)

introduction

Notez l'utilisation de base de CloudFirestore sur Android. (Simple transmission / réception de données depuis l'installation, etc.) Le langage utilisé est Java et l'environnement de développement est Android Studio. Veuillez noter qu'il s'agit du premier article, donc je pense qu'il y a de nombreux points difficiles à voir.

À propos de Firestore

Firestore est une base de données NoSQL. La structure du fichier est comme indiqué dans l'image. Il y a un document dans la collection et les données qu'il contient sont utilisées. Vous pouvez également créer des sous-collections dans votre document. structure-data.png

Créer et préparer un projet

Cliquez sur Créer un projet sur la page d'accueil Firebase, puis sur Ajouter un projet. Définissez le nom de votre choix, Analytics est activé, sélectionnez un compte et sélectionnez un projet. Créé. Puisque l'application est Android cette fois, sélectionnez Android.

Ajouter Firebase aux applications Android

** Étape 1 Inscription de l'application ** Vous ne pouvez saisir ici que le package Android. Entrez votre pseudo et SHA-1 si nécessaire. (Aucune entrée cette fois) ** Étape 2 Téléchargez le fichier de configuration ** Téléchargez google-services.json Basculez la méthode d'affichage en haut à gauche sur Projet et introduisez le fichier json dans l'application OK si le fichier json existe au même endroit que l'image à droite du site ** Étape 3 Ajoutez le SDK Firebase ** Ajout du contenu décrit sur le site au niveau de construction. En plus du contenu décrit sur le site, le contenu suivant a été ajouté au niveau de l'application.

app


dependencies {
implementation 'com.google.firebase:firebase-core:17.0.0'
implementation 'com.google.firebase:firebase-firestore:20.0.0'
}

La version est affichée en vérifiant la dernière bibliothèque disponible au bas de ce site.

** Étape 4 Exécutez l'application et vérifiez l'installation ** Vous pouvez sauter ici car cela peut ne pas se terminer. La confirmation est terminée si vous exécutez l'application et que logcat affiche *** I / FirebaseInitProvider: Initialisation de FirebaseApp réussie ***. ** Étape 5 Créez un firestore ** Cliquez sur Cloud Firestore dans l'onglet gauche du site pour créer une base de données Pour la règle, sélectionnez cette fois le mode d'environnement de production. (Le mode test se verra refuser l'accès à moins d'être mis à jour pendant 30 jours) Choisissez un emplacement approprié. Parce que les règles sont strictes si elles sont laissées telles quelles Changer *** écrire: si faux pour écrire: si vrai *** 53c13ab8b30c6ebcc4556a9541a4f954.png La préparation est terminée.

code

Écrivez un petit code qui peut être utilisé pour l'envoi / la réception et autres. Veuillez l'essayer en vérifiant le Firestore.

Spécification des documents et des collections

Il peut être spécifié dans l'instruction suivante. Si le document / collection spécifié n'existe pas, il sera créé lors de l'enregistrement des données.

DocumentReference mDocRef = FirebaseFirestore.getInstance().document("Nom de la collection/Nom du document");

Envoyer

Tout d'abord, je présenterai le code du processus de transmission.

Enregistrer la carte

Map<String, Object> data = new HashMap<>();
       data.put("A","pomme");
       data.put("B","Mandarine");
       data.put("C","Grain de raisin");
        mDocRef.set(data);

Enregistrer la liste

ArrayList<String> group = new ArrayList<>();
        group.add("pomme");
        group.add("Mandarine");
        group.add("Grain de raisin");
        Map<String, Object> data = new HashMap<>();
        data.put("Nom de domaine",group);
        mDocRef.set(data);

Recevoir

Ensuite, je présenterai le code pour obtenir la valeur de Firebase.

Obtenir la carte

mDocRef.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
            @Override
            public void onComplete(@NonNull Task<DocumentSnapshot> task) {
                if (task.isSuccessful()) {
                    DocumentSnapshot document = task.getResult();
                    if (document.exists()) {
                       //Traitement lorsque la valeur peut être obtenue
                        String save = (String) document.get("Nom de domaine");//
                    } else {
                        //Que faire lorsque la valeur n'existe pas
                } else {
                    //Traitement en cas d'échec de l'acquisition
                }

            }
        });

Obtenir la liste

mDocRef.get().addOnCompleteListener(new OnCompleteListener<DocumentSnapshot>() {
            @Override
            public void onComplete(@NonNull Task<DocumentSnapshot> task) {
                if (task.isSuccessful()) {
                    DocumentSnapshot document = task.getResult();
                    if (document.exists()) {
                       //Traitement lorsque la valeur peut être obtenue
                       ArrayList<String> group =  (ArrayList<String>) document.get("Nom de domaine");
                    } else {
                       //Que faire lorsque la valeur n'existe pas
                    }
                } else {
                    //Traitement lorsque l'acquisition de valeur échoue
                }

            }
        });

Autre code que vous pourriez utiliser souvent

Ensuite, écrivez le code que vous pourriez utiliser.

Le traitement lors de l'enregistrement réussit ou échoue

Décrit après le processus d'envoi des données.

mDocRef.set(data).addOnCompleteListener(new OnCompleteListener<Void>() {
            @Override
            public void onComplete(@NonNull Task<Void> task) {
                if (task.isSuccessful()) {
                    ///Traitement lorsque l'enregistrement est réussi
                } else {
                    ///Le traitement lorsque l'enregistrement échoue
                }
            }
        });

Que faire lorsque la valeur change

Exécuté au démarrage et lorsque la valeur change

mDocRef.addSnapshotListener(new EventListener<DocumentSnapshot>() {
                    @Override
                    public void onEvent(@Nullable DocumentSnapshot snapshot,
                                        @Nullable FirebaseFirestoreException e) {

                        if (snapshot != null && snapshot.exists()) {
                            Log.d("TAG", "Current data: " + snapshot.getData());
                            //Que faire en cas de changement
                        }
                    }
        });

à la fin

Ceci est la fin de l'introduction de la façon d'utiliser Firestore. Merci beaucoup.

Recommended Posts

Facile à utiliser Cloud Firestore (Android)
Array.map facile à utiliser (&: méthode)
La fonction est très facile à utiliser
[Swift] Comment installer Firebase ~ Comment utiliser Realtime Database et Cloud Firestore
Utilisez ViewModel pour faire pivoter approximativement les applications Android
Comment utiliser ExpandableListView dans Android Studio
Un moyen très simple d'utiliser enum avec JSP
Comment utiliser LOG Java Producer d'Alibaba Cloud
Comment utiliser Map
Comment utiliser rbenv
Comment utiliser with_option
Comment utiliser fields_for
Comment utiliser java.util.logging
Comment utiliser la carte
Comment utiliser collection_select
Introduction à la mise en page Android
Comment utiliser Twitter4J
Comment utiliser MapStruct
Comment utiliser TreeSet
Comment utiliser Truth (bibliothèque d'assertions pour Java / Android)
Comment utiliser l'identité
[Android Studio] Je souhaite utiliser une bibliothèque Maven sur Android
Comment utiliser le hachage
[Note] Défi pour développer une application commerciale Andorid
Comment utiliser Dozer.mapper
Comment utiliser Gradle
Comment utiliser org.immutables
Comment utiliser java.util.stream.Collector
Comment utiliser VisualVM
Comment utiliser Map
Facile à entretenir FizzBuzz
Comment utiliser OpenCV 4 sur Android et afficher la vue en direct de la caméra
Utilisez Java inclus avec Android Studio pour créer React Native
Comment utiliser l'API Chain
[Java] Comment utiliser Map
Comment utiliser Queue avec priorité
[Rails] Comment utiliser enum
Bibliothèque de traitement facile à créer
Utiliser la communication série sur Android
Comment utiliser java Facultatif
Comment utiliser le retour Ruby
[Rails] Comment utiliser enum
Comment utiliser @Builder (Lombok)
Comment utiliser la classe Java
[Java] Comment utiliser removeAll ()
Comment utiliser la jonction de rails
[java] Raisons d'utiliser statique
Commande Rbenv pour utiliser Ruby
Ruby: Comment utiliser les cookies
Comment utiliser Dependant :: Destroy
Utiliser le code natif sur Android
Comment utiliser Eclipse Debug_Shell
Comment utiliser Apache POI
[Rails] Comment utiliser la validation