Lompat ke konten

Login Google di Android

GitHub

Dalam panduan ini, Anda akan belajar cara mengatur Login Google dengan Capgo Login Sosial untuk Android. Saya asumsikan bahwa Anda telah membaca panduan pengaturan umum. Panduan Pengaturan Umum.

Di bagian ini, Anda akan belajar cara mengatur login Google di Android.

  1. Buat ID klien Android.

    1. Klik di bar pencarian

      Bar pencarian Google Console
    2. Cari credentials dan klik pada APIs and Services satu (nomor 2 pada screenshot)

      Hasil pencarian menampilkan opsi kredential dengan APIs dan Services yang dihiglight
    3. Klik pada create credentials

      Tombol buat kredential di Google Console
    4. Pilih OAuth client ID

      Pilih opsi ID klien OAuth di menu pembuatan kredential
    5. Pilih jenis Android aplikasi

      Pilihan jenis aplikasi dengan opsi Android yang ditonjolkan
    6. Buka Android Studio

    7. Di bagian bawah navigator, cari bagian Gradle Scripts

      Gradle Scripts di navigator proyek Android Studio
    8. Cari build.gradle untuk file app

      build.gradle (Module: app) di bagian Gradle Scripts
    9. Salin android.defaultConfig.applicationId. Ini akan menjadi milikmu package name di konsol Google

      File Build.gradle menampilkan konfigurasi applicationId
    10. Sekarang, buka terminal. Pastikan Anda berada di android folder aplikasi Anda dan jalankan ./gradlew signInReport

    Terminal menampilkan perintah gradlew signInReport
    1. Geser ke atas perintah ini. Anda harus melihat hal berikut. Salin SHA1.
    Output terminal menampilkan fingerprint sertifikat SHA1
    1. Sekarang, kembali ke Konsol Google. Masukkan applicationId sebagai Package Name dan SHA1 Anda di bidang sertifikat dan klik create
    Formasi klien Android dengan nama paket dan SHA1 diisi
  2. Buat klien web (ini diperlukan untuk Android)

    1. Pergi ke halaman Create credentials dalam Google Console

    2. Atur jenis aplikasi ke Web

      Pilihan jenis aplikasi dengan opsi Web yang ditonjolkan
    3. Klik Create

      Formulir pembuatan klien web dengan tombol Buat di bagian bawah
    4. Salin ID klien, Anda akan menggunakan ini sebagai webClientId dalam JS/TS code

      Detail ID klien menampilkan ID klien web untuk disalin
  3. Modifikasi MainActivity

    1. Silakan buka aplikasi Anda di Android Studio. Anda dapat menjalankannya cap open android

    2. Temukan MainActivity.java

      1. Buka folder app folder

        Folder aplikasi di navigator Android Studio project
      2. Temukan java

        Folder Java di struktur Android Studio project
      3. Temukan folder Anda dan klik pada itu MainActivity.java MainActivity.java file di struktur paket

        Modifikasi
    3. . Tambahkan __CAPGO_KEEP_0__ MainActivity.java. Please add the following code

      import ee.forgr.capacitor.social.login.GoogleProvider;
      import ee.forgr.capacitor.social.login.SocialLoginPlugin;
      import ee.forgr.capacitor.social.login.ModifiedMainActivityForSocialLoginPlugin;
      import com.getcapacitor.PluginHandle;
      import com.getcapacitor.Plugin;
      import android.content.Intent;
      import android.util.Log;
      import com.getcapacitor.BridgeActivity;
      // ModifiedMainActivityForSocialLoginPlugin is VERY VERY important !!!!!!
      public class MainActivity extends BridgeActivity implements ModifiedMainActivityForSocialLoginPlugin {
      @Override
      public void onActivityResult(int requestCode, int resultCode, Intent data) {
      super.onActivityResult(requestCode, resultCode, data);
      if (requestCode >= GoogleProvider.REQUEST_AUTHORIZE_GOOGLE_MIN && requestCode < GoogleProvider.REQUEST_AUTHORIZE_GOOGLE_MAX) {
      PluginHandle pluginHandle = getBridge().getPlugin("SocialLogin");
      if (pluginHandle == null) {
      Log.i("Google Activity Result", "SocialLogin login handle is null");
      return;
      }
      Plugin plugin = pluginHandle.getInstance();
      if (!(plugin instanceof SocialLoginPlugin)) {
      Log.i("Google Activity Result", "SocialLogin plugin instance is not SocialLoginPlugin");
      return;
      }
      ((SocialLoginPlugin) plugin).handleGoogleLoginIntent(requestCode, data);
      }
      }
      // This function will never be called, leave it empty
      @Override
      public void IHaveModifiedTheMainActivityForTheUseWithSocialLoginPlugin() {}
      }
    4. Simpan file ini

  4. Gunakan Login Google di aplikasi Anda

    1. Pertama, import SocialLogin

      import { SocialLogin } from '@capgo/capacitor-social-login';
    2. Panggil initialize. Ini harus dipanggil hanya sekali.

      // onMounted is Vue specific
      // webClientId is the client ID you got in the web client creation step not the android client ID.
      onMounted(() => {
      SocialLogin.initialize({
      google: {
      webClientId: '673324426943-avl4v9ubdas7a0u7igf7in03pdj1dkmg.apps.googleusercontent.com',
      }
      })
      })
    3. Panggil SocialLogin.login. Buatlah tombol dan jalankan kode berikut code ketika diklik.

      const res = await SocialLogin.login({
      provider: 'google',
      options: {}
      })
      // handle the response
      console.log(JSON.stringify(res))
  5. Konfigurasi emulator untuk tes

    1. Masuk Device manager dan klik tombol plus

      Pengelola Perangkat di Android Studio dengan tombol plus dihightlight
    2. Buat perangkat virtual

      Tombol Buat Perangkat Virtual di Konfigurasi Perangkat Virtual
    3. Pilih perangkat apa pun dengan Play Store ikon

      Pemilihan perangkat keras menampilkan perangkat dengan dukungan Toko Permainan

      Seperti yang Anda lihat, pixel 8 mendukung layanan Play Store Pilih

    4. Klik next

      Tombol Next di jendela pembuatan perangkat
    5. Pastikan bahwa gambar OS berjenis Google Play. IT MUST berjenis Google Play

      Pemilihan gambar sistem menampilkan gambar jenis Google Play
    6. Klik next

      Tombol Next di layar pemilihan gambar sistem
    7. Konfirmasikan perangkat Anda. Anda dapat memberi nama emulator Anda sesuai keinginan Anda

      Tampilan pengaturan perangkat dengan tombol Finish
    8. Masuk ke Device Manager dan booting simulator Anda

      Manajer Perangkat dengan simulator virtual terdaftar dan tombol play
    9. Setelah simulator booting, masuk ke pengaturan simulatornya

      Tampilan emulator Android dengan aplikasi pengaturan
    10. Masuk ke Google Play

    Tampilan pengaturan dengan pilihan Google Play
    1. Klik Update dan tunggu sekitar 60 detik
    Tampilan pengaturan Google Play dengan tombol Update
  6. [Test aplikasi Anda]

    Jika Anda telah melakukan semuanya dengan benar, Anda seharusnya melihat aliran login Google berjalan dengan baik:

    Demo aliran login Google pada Android menampilkan proses masuk dan autentikasi sukses

Jika Anda mengalami masalah, silakan lihat Github masalah.

Masalah dengan login Google adalah SELALU terkait dengan sertifikat SHA1.

Jika Anda tidak dapat mendapatkan sertifikat SHA1 pengembangan, coba gunakan keystore kustom. Di sini adalah sebuah komentar menjelaskan cara menambahkan keystore ke proyek Anda.

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