Langsung ke isi

Firebase Google Login pada iOS

GitHub

Petunjuk ini akan membantu Anda mengintegrasikan Google Sign-In dengan Firebase Authentication pada iOS. Saya asumsikan Anda telah menyelesaikan pengaturan Firebase Google secara umum. pengaturan 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

    Tombol Tambah Aplikasi Firebase Tombol Tambah Aplikasi Firebase
  3. Pilih iOS

    Tambahkan Aplikasi Firebase iOS
  4. Isi bagian pertama dari formulir

    1. Isi Apple bundle ID
      1. Buka Xcode di aplikasi Anda menggunakan npx cap open ios
      2. Geser dua kali pada App Target aplikasi di navigator Xcode
      3. Pastikan Anda berada di Targets -> App Bbagian Target di Xcode dengan aplikasi yang dipilih
      4. Temukan Akun Anda Bundle Identifier Identifier Paket di Pengaturan Projek Xcode
      5. Salin Bundle Identifier dan tempelkan di console Firebase Bidang ID Paket iOS Firebase Tambah Aplikasi
    2. Klik pada tombol Register app tombol Tambahkan Aplikasi Firebase iOS Button Pendaftaran
  5. tombol Download config file Langkah

    Tambahkan Aplikasi Firebase iOS Lewati Unduh
  6. tombol Add firebase SDK Langkah

    Tambahkan Aplikasi Firebase iOS Lewati Unduh Firebase SDK Tombol
  7. Lewati langkah Add initialization code Langkah

    Tambahkan Inisialisasi Firebase iOS Lewati Tambahkan Inisialisasi Code Tombol
  8. Klik pada tombol Continue to console Tombol

    Terus ke Console Firebase iOS Tombol
  9. Dapatkan ID klien iOS Anda dan Anda YOUR_DOT_REVERSED_IOS_CLIENT_ID

    1. Pergi ke Console Google Cloud di console.cloud.google.com

    2. Cari proyek Anda

      1. Pilih proyek selector Pilih Proyek Google Cloud Console
      2. Cari proyek Anda dengan nama yang tepat dari proyek Firebase Anda dan klik pada itu. Di kasus saya, itu adalah sociallogin-tutorial-app. Firebase Project Selector Project
    3. Buka bar pencarian dan buka credentials

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

      ID Klien iOS Console Google Cloud
    5. Salinlah Client ID sebagai well sebagai iOS URL scheme. Ini akan menjadi masing-masing dari Anda iOSClientId dan YOUR_DOT_REVERSED_IOS_CLIENT_ID.

      ID Klien iOS Console Google Cloud Kopi
  10. Dapatkan ID klien web Anda

    1. Pergi kembali ke console Firebase dan pergi ke Build -> Authentication Menu Autentikasi Firebase
    2. Klik pada tombol Sign-in method button Metode Pengenalan Firebase Authentication
    3. Klik pada tombol Google provider Metode Pengautentikan Firebase untuk Pengguna Google
    4. Klik pada tombol Web SDK configuration button Metode Pengenalan Firebase Authentication Tanda Tangan Web SDK Konfigurasi Tombol
    5. Salinlah Web client ID Ini akan menjadi ID klien Anda webClientId di dalam initialize Metode plugin ini. Metode Pengenalan Firebase Authentication Sign-in Web SDK Konfigurasi Web ID Klien
  11. Buka Xcode dan cari file

    1. Info.plist file di navigator proyek Xcode Info.plist file

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

      Menu kanan klik menampilkan Buka Sebagai Sumber Code
    3. di bagian bawah layar Anda Plist file, Anda akan melihat sebuah </dict> tag

      Masukkan fragmen berikut tepat sebelum penutup
    4. Masukkan fragmen berikut sebelum penutup </dict> tag

      Info.plist dengan skema URL code dimasukkan sebelum tag tutup dictionary
      <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. Ubah YOUR_DOT_REVERSED_IOS_CLIENT_ID Info.plist dengan ID klien yang sebenarnya diubah di skema URL

      Info.plist dengan skema URL __CAPGO_KEEP_0__ dimasukkan sebelum penutup tag dict
  12. Ubah YOUR_IOS_CLIENT_ID ke iOS Client ID yang Anda salin di langkah 9

  13. Simpan file dengan Command + S

  14. Ubah AppDelegate.swift

    1. Buka AppDelegate

      Berkas AppDelegate.swift di navigator proyek Xcode
    2. di import GoogleSignIn at the top of the file

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

      Fungsi asli aplikasi 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)
      }
      Fungsi aplikasi openURL yang telah dimodifikasi dengan penanganan GoogleSignIn
    5. Simpan file dengan Command + S

  15. Menggunakan login Google di aplikasi Anda

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

The user akan dibuat secara otomatis di Firebase Auth pada pertama kali masuk.

Jika autentikasi mengalami gangguan atau gagal:

  • Pastikan idToken audience sesuai dengan ID klien web Firebase Anda
  • Periksa bahwa Google Sign-In diaktifkan di Firebase Console
  • Pastikan Info.plist memiliki URL schemes dan GIDClientID yang benar
  • Pastikan iOSServerClientId sesuai dengan ID klien web Anda
  • Ulas kembali Contoh aplikasi code sebagai referensi

Lanjutkan dari Firebase Google Login pada iOS

Judul Bagian “Lanjutkan dari Firebase Google Login pada iOS”

Jika Anda menggunakan Firebase Google Login pada iOS untuk merencanakan autentikasi dan alur akun, hubungkannya dengan Menggunakan @capgo/capacitor-social-login untuk kemampuan native di Menggunakan @capgo/capacitor-social-login, Menggunakan @capgo/capacitor-social-login untuk detail implementasi di @capgo/capacitor-social-login, Menggunakan @capgo/capacitor-passkey untuk detail implementasi di @capgo/capacitor-passkey, @capgo/capacitor-native-biometrik untuk detail implementasi di @capgo/capacitor-native-biometric, dan Dua faktor autentikasi untuk detail implementasi di Dua faktor autentikasi.