Errorbody {width:35em;margin:0 auto;font-family:Tahoma, Verdana, Arial, sans-serif;}An error occurred.Sorry, the page you are looking for is currently unavailable.Please try again later.If you see this error constantly and you are the system administrator of this resource then please make sure that you are not blocking our IP address: 51.255.65.216Faithfully yours, GTranslate – Translation Proxy.https://gtranslate.io (function (d, w, c) { (w[c] = w[c] || []).push(function() { try { w.yaCounter37077165 = new Ya.Metrika({ id:37077165, clickmap:true, trackLinks:true, accurateTrackBounce:true, ut:’noindex’ }); } catch(e) { } }); var n = d.getElementsByTagName(‘script’)[0], s = d.createElement(‘script’), f = function () { n.parentNode.insertBefore(s, n); }; s.type = ‘text/javascript’; s.async = true; s.src = ‘https://mc.yandex.ru/metrika/watch.js’; if (w.opera == ‘[object Opera]’) { d.addEventListener(‘DOMContentLoaded’, f, false); } else { f(); } })(document, window, ‘yandex_metrika_callbacks’);

Cele bloga

Po przeczytaniu tego bloga będziemy mogli pobierać dane z Firebase Realtime Database. Te dane mogą zawierać proste typy danych, takie jak ciągi znaków lub złożone typy danych, takie jak obiekty Java.

Wymagania wstępne

Aby korzystać z bazy danych Firebase Realtime, potrzebny jest projekt Android Studio i projekt Firebase. Utwórz nowy projekt Android Studio (lub użyj dowolnego istniejącego projektu). Ten projekt Android Studio będzie używany do pracy z bazą danych w czasie rzeczywistym. Wykonaj czynności podane poniżej, aby utworzyć projekt Firebase –

1. Iść do https://console.firebase.google.com

2. Kliknij "Dodaj projektPrzycisk ".

3. Wprowadź nazwę projektu i zaakceptuj warunki i kliknij "kontynuowaćPrzycisk ".

Dodaj projekt

4. Następnie dodaj aplikację Android do swojego projektu. Wymaga podania nazwy pakietu aplikacji. Kliknij Dalej.

5. Pobierz plik google-services.json i przenieś ten plik do lokalizacji w projekcie Android w Android Studio, zgodnie z opisem na ekranie.

6. W następnym kroku pojawi się mały samouczek dodający linie kodu 3 w plikach build.gradle na poziomie projektu i aplikacji. Dodaj je odpowiednio.

7. Następnie zakończ proces dodawania aplikacji Android do projektu.

8. Następnie kliknij opcję "Baza danych" z lewego menu i kliknij przycisk "Utwórz bazę danych".

Utwórz bazę danych?

9. Konfiguracja Firebase została zakończona Teraz dodaj bibliotekę Firebase do korzystania z bazy danych Firebase Realtime w pliku build.gradle na poziomie aplikacji. Można to zrobić, dodając następujący wiersz:

implementacja "com.google.firebase: baza danych Firebase: 16.0.6"

Implementacja kodu

Przed pobraniem referencji musisz zrozumieć, co to jest referencja Firebase. Baza referencyjna Firebase wskazuje na lokalizację w bazie danych Firebase, w której przechowywane są dane. Nawet jeśli utworzysz wiele odniesień, wszystkie będą dzielić to samo połączenie, pod warunkiem, że używasz tej samej ścieżki podczas tworzenia odniesienia z instancji bazy danych. Po pierwsze musimy mieć instancję bazy danych Firebase, aby z niej skorzystać. Instancja może zostać utworzona przez następujący wiersz kodu.

prywatny FirebaseDatabase mDatabase = FirebaseDatabase.getInstance ();

Teraz trzeba utworzyć odniesienia do ścieżek, w których dane są przechowywane w bazie danych. Ponieważ dane w bazie danych Firebase są przechowywane w formacie JSON, kluczami obiektu JSON są ścieżki określone w odnośnikach. Odwołanie do węzła głównego można utworzyć za pomocą następującego wiersza kodu:

private DatabaseReference mGetReference = mDatabase.getReference ();

Po uzyskaniu odwołania do bazy danych, asynchroniczny program nasłuchujący musi być dołączony do odwołania do bazy danych, który aktywnie nasłuchuje każdej zmiany dokonanej w bazie danych. Ten program nasłuchujący zwraca migawkę danych bazy danych po raz pierwszy po jej dołączeniu. Następnie migawka danych jest zwracana po każdej zmianie w ścieżce, do której wskazuje odwołanie do bazy danych. Zwykle baza danych zawiera ten sam typ danych, ale przypuśćmy, że baza danych zawiera dane różnych typów. Poniżej znajduje się zrzut ekranu bazy danych zawierającej niektóre fałszywe dane:

fikcyjne dane

Aby pobrać bazę danych z tej bazy danych, dołącz wartość ValueEventListener do odwołania do bazy danych. Słuchacz można dodać za pomocą następującego kodu:

mGetReference.addValueEventListener (new ValueEventListener () {@Override public void onDataChange (@NonNull DataSnapshot dataSnapshot) {if (dataSnapshot.exists ()) {HashMap <String, Object> dataMap = (HashMap <String, Object>) dataSnapshot.getValue ( ), for (String key: dataMap.keySet ()) {Object data = dataMap.get (key); try {HashMap <String, Object> userData = (HashMap <String, Object>) data; User mUser = new User ( (String) userData.get ("name"), (int) (long) userData.get ("age")); addTextToView (mUser.getName () + "-" + Integer.toString (mUser.getAge ()) );} catch (ClassCastException cce) {// Jeśli obiekt nie może zostać wrzucony do HashMap, oznacza to, że jest on typu String. try {String mString = String.valueOf (dataMap.get (klucz)); addTextToView ( mString);} catch (ClassCastException cce2) {}}}}} @Override public void onCancelled (@NonNull DatabaseError databaseError) {}});

Po dołączeniu detektora jest on wykonywany najpierw na początku, zwracając wszystkie dane w bazie danych w tym czasie. Ten detektor zostanie później wywołany w momencie, gdy każda zmiana będzie miała miejsce w bazie danych na ścieżce wskazanej przez odniesienie, do którego dołączony jest detektor.

Podsumowanie

Po wykonaniu powyższej procedury będziesz mógł pobierać dane z bazy danych Firebase Realtime w systemie Android.


Leave a Reply

Your email address will not be published. Required fields are marked *