1.10.15.8. fejezet, Firebase
Beküldte pzoli - 2023, január 27 - 10:59de
Kapcsolódó hivatkozások
- Firebase console
- Firebase Realtime Database
- GeoLoggerApp repo firebase branch
- User account management in firebase
- Manage User Sessions
- OnLine JWT dekóder
- Database events
- Sample ReactNativen firebase App
- GeoFire Java
- Deploy your React Typescript app to Firebase (youtube)
Alkalmazás függőségek
npm install @react-native-firebase/app npm install @react-native-firebase/auth npm install @react-native-firebase/database
android/build.gradle:
buildscript { ... dependencies { ... classpath("com.google.gms:google-services:4.3.15") ... } } ...
android/app/build.gradle:
// "com.android.application" --- EZ ALÁ BEILLESZTENI apply plugin: "com.google.gms.google-services" ... dependencies { ... implementation platform("com.google.firebase:firebase-bom:31.2.0") implementation "com.google.firebase:firebase-analytics" ... }
android/app/src/main/AndroidManifest.xml
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.geologgerapp"> ... <meta-data android:name="com.google.android.geo.API_KEY" android:value="YOUR-API-KEY" /> </application> </manifest>
Google services
Android-hoz szükséges a google-services.json letöltése a support.google.com leírása szerint. Majd ezt a fájlt másoljuk be az android/app könyvtárba.
Triggerek
Az adatbázis változásának követésére használhatjuk a referenciát az 'on(eventType: FirebaseDatabaseTypes.EventType, callback)' metódusát, aminek az eventType-ja lehet: "value", "child_added", "child_changed", "child_removed", vagy "child_moved."
import { firebase } from '@react-native-firebase/database'; export default class FirebaseHelper { private database = firebase.app() .database('https://geologger-b9659-default-rtdb.europe-west1.firebasedatabase.app'); constructor() { } public registerNotification() { let ref = this.database.ref('/geolocations/users'); ref.off('value'); //Ez eltávolítja a korábban regisztrált callback funkciót ref.on('value', function (snapshot) { let key = Object.keys(snapshot.val())[0]; console.log(snapshot.child(key).toJSON()); }); } }
- A hozzászóláshoz be kell jelentkezni