AndroidでのGoogleログイン
このガイドでは、Capgo Social LoginでAndroid用のGoogleログインを設定する方法を学びます。 一般的なセットアップガイドをすでに読んでいることを前提としています。
Androidでのgoogleログインの使用
Section titled “Androidでのgoogleログインの使用”このパートでは、AndroidでGoogleログインを設定する方法を学びます。
-
Android client IDを作成します。
-
検索バーをクリックします

-
credentialsを検索し、APIs and Services(スクリーンショットの2番)をクリックします
-
create credentialsをクリックします
-
OAuth client IDを選択します
-
Androidアプリケーションタイプを選択します
-
Android Studioを開きます
-
ナビゲーターの一番下にある
Gradle Scriptsを見つけます
-
モジュール
appのbuild.gradleを見つけます
-
android.defaultConfig.applicationIdをコピーします。これがGoogle consoleのpackage nameになります
-
ターミナルを開きます。アプリの
androidフォルダにいることを確認し、./gradlew signInReportを実行します

- このコマンドの先頭までスクロールします。次のように表示されるはずです。
SHA1をコピーします。

- Google Consoleに戻ります。
Package NameとしてapplicationIdを入力し、証明書フィールドにSHA1を入力してcreateをクリックします

-
-
Webクライアントを作成します(これはAndroidに必要です)
-
Google Consoleの
Create credentialsページに移動します -
アプリケーションタイプを
Webに設定します
-
Createをクリックします
-
client IDをコピーします。これをJS/TSコードで
webClientIdとして使用します
-
-
MainActivityを変更します-
Android Studioでアプリを開いてください。
cap open androidを実行できます -
MainActivity.javaを見つけます-
appフォルダを開きます
-
javaを見つけます
-
MainActivity.javaを見つけてクリックします
-
-
MainActivity.javaを変更します。次のコードを追加してください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 {@Overridepublic 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@Overridepublic void IHaveModifiedTheMainActivityForTheUseWithSocialLoginPlugin() {}} -
ファイルを保存します
-
-
アプリケーションでGoogleログインを使用します
-
まず、
SocialLoginをインポートしますimport { SocialLogin } from '@capgo/capacitor-social-login'; -
initializeを呼び出します。これは一度だけ呼び出す必要があります。
// onMountedはVue固有のものです// webClientIdは、Android client IDではなく、Webクライアント作成ステップで取得したclient IDです。onMounted(() => {SocialLogin.initialize({google: {webClientId: '673324426943-avl4v9ubdas7a0u7igf7in03pdj1dkmg.apps.googleusercontent.com',}})}) -
SocialLogin.loginを呼び出します。ボタンを作成し、クリック時に次のコードを実行します。const res = await SocialLogin.login({provider: 'google',options: {}})// レスポンスを処理しますconsole.log(JSON.stringify(res))
-
-
テスト用のエミュレータを設定します
-
Device managerに移動してプラスボタンをクリックします
-
仮想デバイスを作成します

-
Play Storeアイコンがあるデバイスを選択します
ご覧のとおり、
pixel 8はPlay Storeサービスをサポートしています -
nextをクリックします
-
OSイメージが
Google Playタイプであることを確認します。Google Playタイプである必要があります
-
nextをクリックします

-
デバイスを確認します。エミュレータに好きな名前を付けることができます

-
Device Managerに移動してシミュレータを起動します
-
シミュレータが起動したら、設定に移動します

-
Google Playに移動します

Updateをクリックして約60秒待ちます

-
-
アプリケーションをテストします
すべて正しく行った場合、Googleログインフローが正しく動作することを確認できます:

トラブルシューティング
Section titled “トラブルシューティング”問題がある場合は、Githubの問題を確認してください。
Googleログインの問題は常にSHA1証明書に関連しています。
開発SHA1証明書を取得できない場合は、カスタムkeystoreを使用してみてください。こちらは、プロジェクトにkeystoreを追加する方法を説明するコメントです。