Google 登录 Android
复制一个包含安装步骤和本插件的完整Markdown指南的设置提示。
在本指南中,您将学习如何在 Android 设备上设置 Google 登录和 Capgo 社交登录。 一般设置指南.
在 Android 设备上使用 Google 登录
名为“在 Android 设备上使用 Google 登录”的部分在本部分中,您将学习如何在 Android 上设置 Google 登录。
-
创建Android客户端ID
-
点击搜索栏
-
搜索
credentials并点击APIs and Services截图中的第2个(数字2)
-
点击
create credentials
-
选择
OAuth client ID
-
选择
Android应用程序类型
-
打开 Android Studio
-
在导航器的最下方找到
Gradle Scripts
-
在 Gradle Scripts 部分中找到
build.gradle模块app
-
复制
android.defaultConfig.applicationId. 这将是你的package name在 Google 控制台
-
现在,打开终端。确保你在你的应用程序的文件夹中并运行
android终端显示 gradlew signInReport 命令./gradlew signInReport
- 终端输出显示 SHA1 证书指纹
SHA1.
- 作为
applicationId并你的 SHA1 在证书字段中并点击Package NameAndroid 客户端创建表单,包名和 SHA1 字段已填充create
-
-
创建一个 Web 客户端(这是 Android 必须的)
-
前往
Create credentials页面在 Google 控制台 -
设置应用类型为
Web
-
点击
Create
-
复制客户 ID,您将其作为
webClientId在您的 JS/TS code
-
-
修改您的
MainActivity-
请打开您的应用程序在 Android Studio 中。您可以运行
cap open android -
在 Android Studio 项目导航器中找到
MainActivity.java-
在 Android Studio 项目结构中找到
app找到你的
-
MainActivity.java 文件在包结构中
java
-
请添加以下内容 __CAPGO_KEEP_0__
MainActivity.java复制到剪贴板
-
-
在 Android Studio 项目结构中找到 Java 文件夹
MainActivity.java. Please add the following codeimport 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 登录
-
首先,导入
SocialLoginimport { SocialLogin } from '@capgo/capacitor-social-login'; -
调用 initialize。应仅在此处调用一次。
// 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',}})}) -
调用
SocialLogin.login. 创建一个按钮并在点击时运行以下 code。const res = await SocialLogin.login({provider: 'google',options: {}})// handle the responseconsole.log(JSON.stringify(res))
-
-
配置模拟器进行测试
-
进入
Device manager在 Android Studio 中的设备管理器中点击加号按钮
-
虚拟设备配置中的创建虚拟设备按钮
-
图标的设备
Play StoreSelect any device with a
如您所见,
pixel 8支持Play Store服务 -
点击
next
-
确保OS镜像类型为
Google Play. 必须 类型为Google Play
-
点击下一步
-
确认您的设备。您可以为模拟器命名
-
进入
Device Manager并启动您的模拟器
-
模拟器启动后,进入其设置
-
进入
Google Play
- 点击
Update并等待约60秒
-
-
测试您的应用程序
如果您做得正确,应该看到Google登录流程正常工作:
故障排除
标题为“故障排除”如果您遇到任何问题,请查看 Github问题.
与Google登录相关的问题 总是 与SHA1证书有关。
如果您无法获得开发SHA1证书,请尝试使用自定义keystore。 这里 如何添加keystore到您的项目中是通过以下方式进行的。
继续使用Google登录Android
继续使用Google登录Android如果您正在使用 Google登录Android 来规划身份验证和帐户流程,连接它到 使用@capgo/capacitor-social-login 为native能力在使用@capgo/capacitor-social-login中 @capgo/capacitor-social-login 为@capgo/capacitor-social-login实现细节 @capgo/capacitor-passkey 为@capgo/capacitor-passkey实现细节 @capgo/capacitor-native-biometric 为 @capgo/capacitor-native-biometric 的实现细节, 双因素认证 为双因素认证的实现细节,