This page lists down different Swift code snippets which demonstrate how to work with Firebase Realtime Database. I like to have this page handy when working a mobile app for iOS platform with Swift and Firebase.
Set up Firebase Realtime Database
Dependencies to install with Cocoapods
pod 'Firebase/Database'
Configure a FirebaseApp shared instance, in your application’s application:didFinishLaunchingWithOptions: method:
// Use Firebase library to configure APIs FirebaseApp.configure()
Import the Firebase module in your Swift code
import Firebase
Firebase Realtime Database and Swift Code Snippets
Store NSDictionary in Firebase Realtime Database
var dataToStore = [String: String]() sharedData["firstName"] = "Sergey" sharedData["lastName"] = "Kargopolov" var databaseReference: DatabaseReference! databaseReference = Database.database().reference() let currentUser = Auth.auth().currentUser let userDbRef = databaseReference.child("users").child(currentUser!.uid) userDbRef.child("userDetails").setValue(dataToStore)
Read NSDictionary from Firebase Realtime Database
var databaseReference: DatabaseReference! databaseReference = Database.database().reference() databaseReference.child("users").child((currentUser?.uid)!).child("userDetails").observeSingleEvent(of: .value, with: { (snapshot) in let value = snapshot.value as? NSDictionary let firstName = value?["firstName"] as? String ?? "" let lastName = value?["lastName"] as? String ?? "" print("userFullName = \(firstName) \(lastName)") }) { (error) in print(error.localizedDescription) }
Update value of a single key
var databaseReference: DatabaseReference! databaseReference = Database.database().reference() let instanceIdToken = "xxx" let currentUser = Auth.auth().currentUser let userDbRef = databaseReference.child("users").child(currentUser!.uid) userDbRef.child("instanceIdToken").setValue(instanceIdToken)
Delete data from Firebase Realtime Database
var databaseReference: DatabaseReference! databaseReference = Database.database().reference() let dbRefToSelectedItem = databaseReference.child("users").child(self.currentUser!.uid).child("todo-items").child(selectedItemKey!) dbRefToSelectedItem.removeValue()
Firebase for iOS – Video Courses