Android Academy · leksjon

Konfigurere Firebase

Koble appen til et Firebase-prosjekt.

Leksjon 1 av 413 trinn

Konfigurere Firebase er en gratis leksjon i Android Academy på CoddyKit. Dette er leksjon 1 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Android Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Android Academy inneholder totalt 4 leksjoner.

Hva er Firebase?

Firebase er Googles plattform for apputvikling. Den gir Android-appen Deres en ferdig backend, slik at De slipper å bygge og drifte servere selv.

I dette kurset skal De koble en app til Firebase og deretter bruke tre av de mest populære tjenestene:

  • Authentication — logg brukere inn med e-post eller Google
  • Cloud Firestore — en sanntids NoSQL-database
  • Cloud Messaging (FCM) — push-varsler

Den første leksjonen handler om oppsett: å opprette et prosjekt og koble det til Android-appen Deres.

Opprette et Firebase-prosjekt

Alt starter i Firebase-konsollen på console.firebase.google.com.

  • Klikk på Add project og gi prosjektet et navn.
  • Hvert Firebase-prosjekt tilsvarer et Google Cloud-prosjekt i bakgrunnen.
  • Ett Firebase-prosjekt kan inneholde flere apper (Android, iOS og web).

Inne i prosjektet registrerer De den spesifikke Android-appen med dens application ID (pakkenavn), for eksempel com.coddykit.demo. Denne ID-en forteller Firebase hvilken app en forespørsel kommer fra.

Filen google-services.json

Når De registrerer Android-appen, genererer Firebase en konfigurasjonsfil som heter google-services.json.

Last den ned og legg den i rotmappen til appmodulen (ved siden av build.gradle.kts, i app/-mappen).

Denne JSON-filen inneholder prosjekt-ID-en, API-nøkler og registreringsopplysninger for appen. Byggeverktøyene leser den automatisk — De trenger nesten aldri å åpne den manuelt.

// File location in your project:
// app/google-services.json

// It is generated for you and looks roughly like:
{
  "project_info": {
    "project_id": "my-demo-app",
    "storage_bucket": "my-demo-app.appspot.com"
  },
  "client": [
    { "client_info": { "mobilesdk_app_id": "1:1234567890:android:abc123" } }
  ]
}

Legge til Google Services-pluginen

For at Gradle skal lese google-services.json, må De legge til Google Services Gradle-pluginen.

Den moderne fremgangsmåten bruker plugins-blokken med versjonskataloger. De deklarerer pluginen i rotens build-fil (med apply false) og aktiverer den deretter i modulens build-fil.

// Root build.gradle.kts (project level)
plugins {
    id("com.android.application") version "8.5.0" apply false
    id("org.jetbrains.kotlin.android") version "2.0.0" apply false
    id("com.google.gms.google-services") version "4.4.2" apply false
}

Aktivere pluginen i modulen

I build.gradle.kts for app-modulen aktiverer De pluginen, slik at den behandler konfigurasjonsfilen under byggingen.

Uten denne linjen vil Firebase-initialiseringen mislykkes ved kjøring, selv om alt annet er riktig.

// app/build.gradle.kts (module level)
plugins {
    id("com.android.application")
    id("org.jetbrains.kotlin.android")
    id("com.google.gms.google-services")
}

Firebase BoM

Firebase har mange biblioteker (Auth, Firestore, Messaging, Analytics ...). Med Bill of Materials (BoM) er det enkelt å holde versjonene deres synkronisert.

De deklarerer BoM én gang og legger deretter til hver Firebase-avhengighet uten en versjon — BoM velger kompatible versjoner for Dem.

// app/build.gradle.kts -> dependencies { }
dependencies {
    // One BoM controls all Firebase versions
    implementation(platform("com.google.firebase:firebase-bom:33.1.0"))

    // No version numbers here - the BoM decides
    implementation("com.google.firebase:firebase-auth")
    implementation("com.google.firebase:firebase-firestore")
    implementation("com.google.firebase:firebase-messaging")
}

Automatisk initialisering

De forventer kanskje å måtte kalle noe som Firebase.initialize() i Application-klassen. Med det moderne SDK-et trenger De vanligvis ikke det.

Google Services-pluginen genererer automatisk en initialiseringsleverandør som kjører ved oppstart av appen ved hjelp av google-services.json. Når Activity-en starter, er Firebase allerede klart.

// You normally do NOT need this anymore:
// FirebaseApp.initializeApp(context)

// Firebase is initialized automatically on app launch.
// You can just start using a service:
import com.google.firebase.Firebase
import com.google.firebase.firestore.firestore

val db = Firebase.firestore   // ready to use

Kotlin KTX-stilen

Firebase tilbyr idiomatiske Kotlin-accessorer via Firebase-objektet. I stedet for FirebaseFirestore.getInstance() skriver De Firebase.firestore.

Disse utvidelsene er mer naturlige å lese og anbefales i moderne Android-kode.

import com.google.firebase.Firebase
import com.google.firebase.auth.auth
import com.google.firebase.firestore.firestore
import com.google.firebase.messaging.messaging

val auth = Firebase.auth          // FirebaseAuth
val db = Firebase.firestore       // FirebaseFirestore
val fcm = Firebase.messaging      // FirebaseMessaging

// Equivalent old style:
// val auth = FirebaseAuth.getInstance()

Legge til Internett-tillatelsen

Firebase kommuniserer med Googles servere, så appen Deres trenger nettverkstilgang. Deklarer INTERNET-tillatelsen i manifestet.

Dette er en normal tillatelse som gis automatisk ved installasjon — ingen runtime-forespørsel er nødvendig.

<!-- AndroidManifest.xml -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android">

    <uses-permission android:name="android.permission.INTERNET" />

    <application ... >
        <!-- activities, services -->
    </application>
</manifest>

Bekrefte tilkoblingen

En rask måte å bekrefte at oppsettet fungerer på, er å lese en verdi eller kontrollere den gjeldende Firebase-appen. Hvis Firebase ikke var initialisert, ville tilgang til en tjeneste utløse et unntak.

Mange utviklere legger også midlertidig til Analytics-avhengigheten og ser etter en hendelse i konsollen som en enkel røyketest, men det å bare ta i bruk en tjeneste i koden beviser allerede at koblingen fungerer.

import android.util.Log
import com.google.firebase.Firebase
import com.google.firebase.firestore.firestore

fun verifyFirebase() {
    val app = Firebase.firestore.app
    Log.d("Firebase", "Connected to project: ${app.options.projectId}")
}

Vanlige oppsettsfeil

Hvis Firebase ikke fungerer, bør De først kontrollere dette:

  • Feil pakkenavn — appens applicationId må samsvare med det De registrerte.
  • google-services.json mangler — den må ligge i app/-mappen.
  • Pluginen er ikke aktivert i modulens build-fil.
  • INTERNET-tillatelsen mangler i manifestet.
  • SHA-1-fingeravtrykket er ikke lagt til — dette kreves senere for Google-innlogging.

Rask sjekk

Hva er formålet med filen google-services.json?

Oppsummering: Oppsettet er ferdig

De har koblet en Android-app til Firebase. Viktige trinn:

  • Opprett et prosjekt i Firebase-konsollen, og registrer appen med pakkenavnet.
  • Legg google-services.json i app/-mappen.
  • Aktiver Google Services-pluginen, og legg til Firebase BoM samt bibliotekene De trenger.
  • Firebase initialiseres automatisk — få tilgang til tjenester via Firebase.auth, Firebase.firestore og så videre.
  • Ikke glem INTERNET-tillatelsen.

Deretter skal De logge brukere inn med Firebase Authentication.

Gratis å komme i gang

Lær deg Kotlin med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
36
Leksjoner
152

Ofte stilte spørsmål

Er leksjonen «Konfigurere Firebase» gratis?

Ja – du kan lese valgfritt 3 av leksjonene i læringsstien Android Academy, inkludert «Konfigurere Firebase», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i Android Academy inneholder totalt 4 leksjoner.

Hva lærer jeg i «Konfigurere Firebase»?

Koble appen til et Firebase-prosjekt. Du øver på Android Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med Android Academy?

Ingen tidligere erfaring er nødvendig. Android Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 4.

Hvor lang tid tar leksjonen «Konfigurere Firebase»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne Android Academy-leksjonen?

Ja. Alle Android Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Konfigurere Firebase
  2. Firebase Authentication
  3. Grunnleggende om Cloud Firestore
  4. Push med Cloud Messaging
← Tilbake til Android Academy