Lompat ke konten

Login Google Firebase di iOS

GitHub

Panduan ini akan membantu Anda mengintegrasikan Sign-In Google dengan Otentikasi Firebase pada iOS. Saya asumsikan Anda telah menyelesaikan langkah-langkah sebelumnya. Konfigurasi Firebase Google Umum.

  1. Pergi ke tampilan ringkasan proyek Anda di console.cloud.google.com

    Tampilan Ringkasan Proyek Firebase
  2. Klik pada tombol Add app tombol Tambah Aplikasi Firebase

    tombol Tombol Tambah Aplikasi Firebase
  3. Pilih iOS

    Tombol Tambah Aplikasi iOS Firebase
  4. Isi bagian pertama dari formulir

    1. Isi Apple bundle ID
      1. Buka Xcode di aplikasi Anda menggunakan npx cap open ios
      2. Dua kali klik pada App Target aplikasi di navigator proyek Xcode
      3. Pastikan Anda berada di Targets -> App Bagian Target di Xcode dengan App yang dipilih
      4. Cari Bundle Identifier Field Identifikasi Paket di pengaturan proyek Xcode
      5. Salin Bundle Identifier dan tempelkan di console Firebase Field Identifikasi Paket Firebase di Console iOS
    2. Klik pada tombol Register app button Menambahkan Aplikasi Firebase iOS Tombol Pendaftaran
  5. Lebihkan langkah ini Download config file langkah

    Menambahkan Aplikasi Firebase iOS Tombol Lebihkan Download
  6. Lebihkan langkah ini Add firebase SDK langkah

    Menambahkan Aplikasi Firebase iOS Lebihkan Download Firebase SDK Tombol
  7. Lebihkan langkah ini Add initialization code langkah

    Menambahkan Aplikasi Firebase iOS Lebihkan Inisialisasi Code Tombol
  8. Klik pada tombol ini Continue to console tombol ini

    Tambahkan Aplikasi Firebase iOS Lanjutkan ke Konsole Tombol
  9. Dapatkan ID klien iOS Anda dan Anda YOUR_DOT_REVERSED_IOS_CLIENT_ID

    1. Pergi ke Konsole Google Cloud di https://console.cloud.google.com

    2. Cari Proyek Anda

      1. Klik pada pemilih proyek Pemilih Proyek Konsole Google Cloud
      2. Cari proyek Anda dengan nama yang tepat dari proyek Firebase Anda dan klik pada itu. Dalam kasus saya, itu adalah sociallogin-tutorial-app. Pemilih Proyek Firebase Proyek
    3. Buka bar pencarian dan buka credentials

      1. Buka bar pencarian Bar Pencarian Konsole Google Cloud
      2. Cari untuk credentials dan klik pada APIs and Services nomor 2 pada tangkapan layar Google Cloud Console Cari Kredensial
    4. Klik pada iOS client for [YOUR_APP_ID] (auto created by Google Service) salah satu. Di kasus saya, itu adalah sociallogin-tutorial-app.

      Google Cloud Console Credensial iOS Client ID
    5. Salin Client ID sebagai iOS URL schemeini. Ini akan menjadi masing-masing iOSClientId anda YOUR_DOT_REVERSED_IOS_CLIENT_ID.

      Kembali ke console Firebase dan pilih menu
  10. Pilih menu

    1. Tombol Build -> Authentication __CAPGO_KEEP_0__
    2. __CAPGO_KEEP_1__ Sign-in method __CAPGO_KEEP_2__ Metode Autentikasi Firebase Tombol Masuk
    3. Klik pada tombol Google provider Metode Autentikasi Firebase Provider Google
    4. Klik pada tombol Web SDK configuration tombol Metode Autentikasi Firebase Web SDK Konfigurasi Tombol
    5. Salinlah Web client ID. Ini akan menjadi __CAPGO_KEEP_0__ Anda di webClientId metode initialize Metode Autentikasi Firebase Web __CAPGO_KEEP_0__ Konfigurasi ID Klien Web Metode Autentikasi Firebase Web SDK Konfigurasi
  11. Ubah konfigurasi Info.plist aplikasi Anda

    1. Buka Xcode dan cari file Info.plist file

      File Info.plist di navigator proyek Xcode
    2. Klik kanan pada file ini dan buka sebagai sumber code

      Menu klik kanan menampilkan opsi Buka Sebagai Sumber Code
    3. Pada bagian bawah file, Anda akan melihat tag Plist Tag penutup di file Info.plist </dict> Masukkan fragmen berikut sebelum tag penutup

      tag penutup
    4. tag penutup di Info.plist </dict> fragmen di bawah tag penutup

      Berikut adalah Info.plist dengan skema URL code yang dimasukkan sebelum tag penutup dict
      <key>CFBundleURLTypes</key>
      <array>
      <dict>
      <key>CFBundleURLSchemes</key>
      <array>
      <string>YOUR_DOT_REVERSED_IOS_CLIENT_ID</string>
      </array>
      </dict>
      </array>
      <key>GIDClientID</key>
      <string>YOUR_IOS_CLIENT_ID.apps.googleusercontent.com</string>
    5. Ganti dengan YOUR_DOT_REVERSED_IOS_CLIENT_ID ke nilai yang disalin pada langkah 9 (skema URL iOS)

      Berikut adalah Info.plist dengan ID klien yang sebenarnya dimasukkan dalam skema URL
  12. Ganti dengan YOUR_IOS_CLIENT_ID ke ID klien iOS yang Anda salin pada langkah 9

  13. Simpan file dengan Command + S

  14. Ubah AppDelegate.swift

    1. Buka file AppDelegate

      File AppDelegate.swift di navigator proyek Xcode
    2. Masukkan import GoogleSignIn Pada bagian atas file

      File AppDelegate.swift dengan import GoogleSignIn ditambahkan
    3. Cari func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:]) Fungsi

      Fungsi aplikasi asli openURL di AppDelegate
    4. Ubah fungsi untuk terlihat seperti ini

      func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey: Any] = [:]) -> Bool {
      // Called when the app was launched with a url. Feel free to add additional processing here,
      // but if you want the App API to support tracking app url opens, make sure to keep this call
      var handled: Bool
      handled = GIDSignIn.sharedInstance.handle(url)
      if handled {
      return true
      }
      return ApplicationDelegateProxy.shared.application(app, open: url, options: options)
      }
      Perbarui fungsi buka URL aplikasi dengan penanganan GoogleSignIn
    5. Simpan file dengan Command + S

  15. Menggunakan login Google di aplikasi Anda

    Pada langkah ini, Anda sudah siap menggunakan login Google di aplikasi Anda. Silakan gunakan authUtils.ts file contoh aplikasi untuk mengautentikasi dengan Google.

Pengguna akan dibuat secara otomatis di Firebase Auth pada pertama kali login

Jika autentikasi mengalami keterlambatan atau gagal:

  • Pastikan idToken audience sesuai dengan ID klien Firebase web
  • Periksa bahwa Google Sign-In diaktifkan di Firebase Console
  • Pastikan Info.plist memiliki URL schemes dan GIDClientID yang benar
  • Verifikasi iOSServerClientId sesuai dengan ID klien web Anda
  • Ulas contoh aplikasi __CAPGO_KEEP_0__ example app code Teruskan dari Firebase Google Login di iOS

Jika Anda menggunakan Firebase Google Login di iOS

untuk merencanakan autentikasi dan alur akun, hubungkannya dengan

Section titled “Teruskan dari Firebase Google Login di iOS” Jika Anda menggunakan Firebase Google Login di iOS Untuk menggunakan @capgo/capacitor-social-login untuk kemampuan asli dalam Menggunakan @capgo/capacitor-social-login @capgo/capacitor-social-login untuk detail implementasi dalam @capgo/capacitor-social-login @capgo/capacitor-passkey untuk detail implementasi dalam @capgo/capacitor-passkey @capgo/capacitor-native-biometric untuk detail implementasi dalam @capgo/capacitor-native-biometric, dan Dua faktor autentikasi untuk detail implementasi dalam Dua faktor autentikasi.