Android-接入谷歌登录

android 接入google 登录 在 Android 应用中接入 Google 登录功能,可让用户使用他们的 Google 账号快速登录应用。 阅读详情
AI摘要

本文介绍了在Android应用中集成Google授权登录和一键登录的步骤,包括在Firebase中创建项目获取key,以及处理授权登录的代码示例。同时,文章列举并解决了几种常见的登录错误,如白名单错误、API调用限制等。

1.登录分类

授权登录 和 一键登录
一键登录在部分设备会登录不了,报白名单错误,国外的 大多数 应用使用的是授权登录,建议使用授权登录

2.申请key

在FireBase中直接创建Android 项目,会在Google Cloud 直接生成相关的key,不需要在GoogleCloud手动创建。
会生成一个Android 和 一个 Web 的配置,需要使用 Web 的 Key。

3.授权登录

class LoginActivity : BaseActivity() {
   
   
    companion object {
   
   
        private const val SIGN_LOGIN = 901

        /**
         * google自动登录,使用的是Web的key。web项目会在Android项目生成的时候自动生成
         */
        private const val SERVER_CLIENT_ID = "xxx"
    }
    
    private lateinit var auth: FirebaseAuth
    private var mGoogleSignInClient: GoogleSignInClient? = null

    private fun signInClient() {
   
   
        if (mGoogleSignInClient == null) {
   
   
            val gso = GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
                .requestEmail()
                .requestIdToken(SERVER_CLIENT_ID)
                .build();
            mGoogleSignInClient = GoogleSignIn.getClient(this, gso);
        }
    }


    private fun getGoogleIntent(): Intent {
   
   
        var signInInten: Intent
        if (mGoogleSignInClient == null) {
   
   
            signInClient();
        }
        signInInten = mGoogleSignInClient!!.signInIntent;
        return signInInten
    }

    override fun onCreate(savedInstanceState: Bundle?) {
   
   
        super.onCreate(savedInstanceState)
        ...
        auth = FirebaseAuth.getInstance()
        btnLoginGoogle.setOnClickListener {
   
   
                signInClient()
                startActivityForResult(getGoogleIntent(), SIGN_LOGIN)
        }
    }

    override fun onActivityResult(requestCode: Int
安卓接入google的Firebase登录教程 5.查看apk和aab,两种方式都可以查看。如果出现下面的MD5就表示成功。​​​​2.​​firebase(正式上线)SHA-1 证书指纹和SHA-256 证书指纹也要上传firebase。8.针对SHA 证书指纹,这个地方特别容易出错,导致从androidstudio签名打包可以登录,从google商店下载的包会改变签名,所以你也要把改变的签名上面firebase。6.导入google-services.json和添加Firebase依赖。3.添加项目的SHA证书指纹。4.查看keystore。 阅读详情

相关推荐

安卓应用接入谷歌登录全流程与常见问题解析

OAuth2.0是现代应用身份验证的核心协议,通过授权码模式实现安全的第三方登录。在安卓开发中,谷歌登录接入涉及Play Console与Google Cloud平台的双端配置,关键在于正确处理SHA-1签名和客户端ID类型。工程实践中,开发者需要特别注意Web应用与Android应用凭据的区分,以及调试与发布环境签名的一致性。典型的应用场景包括社交登录、用户数据同步等,而谷歌登录作为国际化应用的基础功能,其12500错误码和签名验证机制是高频问题点。通过正确配置AAB包和云平台客户端,可以构建稳定可靠的登

weixin_29195217的博客 140

谷歌商店全攻略_Google Play 应用商店 上架流程

目录—谷歌N部曲: 1.设置Splash Image 2.如何打安卓包才能上架google play? 3.Google Develop 后台创建APP 4.如何接入谷歌SDK,登录以及排行榜? 5.如何接入谷歌支付? QA: 1.设置Splash Image 这个图片就是unity2019.3以后的Project Setting界面,且为安卓平台。 Virtual Reality Splash Image,这个应该是VR开机的画面,不用管 Splash Screen,开机画面设置选项 a.Splash

东北砍王的栖息地 4031

google登录、成就、支付接入

一 登录接入准备 登录官方文档 在上面的网址中,点击 CONFIGURE A PROJECT来创建一个登录的工程 按要求生成 SHA-1 keytool -exportcert -keystore your_keystore -list -v 注意 ==如果编译的版本使用的keystore和这里用的keystore不同,则登录时会log中会报错 Status{statusCode=DEVELOPE

吾爱豆的博客 4958

【unity】Google 登录和Google支付接入unity

google 支付 google 登录

云渊寒烬 8495

Android应用中实现Google登录

Android应用中实现Google登录功能,我们创建了一个GoogleSignInOptions对象,用于配置登录选项,包括请求邮件地址。如果登录成功,我们可以从GoogleSignInAccount对象中获取账号信息,例如邮件地址。在Activity中添加Google登录按钮,或使用Google登录API以编程方式实现登录流程。

半夏微凉科技 2240

香橙派5b 移植 imx415

修改设备树,以为例,关闭ov13855,添加imx4151;0;1;0;1;0;1;0;1;0;1;0;1;0;以此类推,修改三个dtsi。

ChenYX的博客 4533

BeikeShop跨境电商独立站系统V1.5.0免授权全开源版

BeikeShop 一款开源好用的跨境电商系统,BeikeShop 是基于 Laravel 开发的一款开源商城系统,主要面向外贸/跨境电商行业提供商品管理、订单管理、会员管理、支付、物流、系统管理等功能。BeikeShop商城 Beike多语言商城 多货币商城B2C商城系统 代码100%开源 PHP商城系统 H5/PC商城 跨境电商系统 跨境商城系统 电商商城系统 Laravel 9 框架插件化开发,MVC架构 支持插件市场。Event 机制实现Hook功能,自定义可视化装修。

818

标签传播算法LPA:半监督学习解决标注数据不足的完整实战指南

在机器学习实际工程中,标注数据稀缺往往是制约模型性能的核心瓶颈。半监督学习提供了一条利用海量未标注数据来增强模型泛化能力的有效路径,其中标签传播算法(Label Propagation Algorithm, LPA)因其直观的图结构和优雅的数学原理而备受关注。LPA通过将样本映射为图中的节点,以相似度作为边权重,让已知标签沿着图结构不断扩散,从而实现对未知样本的预测。其背后基于聚类假设与流形假设,能在低标注率场景下显著缓解过拟合问题,提升分类准确率。该技术在文本分类、金融风控、图像识别等存在大量无标注数据的

weixin_29056781的博客 239

MNE-python 进行源定位教程(一)配置环境

根据MNE官网提供的教程进行复现,遇到各种问题的记录。 配置环境 python3.8 + Anaconda + pycharm MNE-Python 是一个开源 Python 模块,用于处理、分析和可视化功能性神经影像数据(EEG、MEG、sEEG、ECoG 和 fNIRS)。 根据官方建议,将MNE-python安装在anaconda的虚拟环境中。 1. 安装Anaconda 过程点击这里 2. 配置pycharm 2.1 导入MNE-python工具包 在pycharm的菜单栏里打开VCS-Create

zQIANYUN的博客 3173

解决usbisp不识别无法烧录Atmega328P,Arduino不识别问题

如果使用Arduino IDE里面的烧录,可能会遇到一个问题,就是不识别国产这种廉价的USBISP 点击烧录引导程序,会遭遇到找不到USB设备的问题,选哪个都会提示找不到,比如选择USBasp could not find USB device with vid=0x16c0 pid=0x5dc vendor='www.fischl.de' product='USBasp' 因此,我们需要使用到progisp这一个软件的1.72版本 选择好芯片的型号后,调用编译好的HEX文...

arenascat的博客 7436

工业4.0必备:C#上位机+数字孪生 生产线实时监控与智能预警系统(工业级实战)

数据割裂:PLC、传感器、工业相机的数据散落在不同系统,想看全局生产状态要切换N个软件,“数据孤岛”导致决策滞后;故障难预判:设备突发故障时,只能停机排查,平均故障响应时间超30分钟,一条生产线停工1小时损失超10万;可视化差:传统监控只有冰冷的数字和2D图表,设备运行状态、生产流程、物料流转无法直观感知,新人上手需3个月才能熟悉产线。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 659

改进的U-Net在视网膜血管分割上的应用

为了提高算法在血管边界的分割能力,在编码部分采用全局卷积网络(GCN)和边界细化(BR)替换传统的卷积层;在跳跃连接部分引入改进的位置注意模块(PA)和通道注意模块(CA),目的是增加血管与背景之间的对比度,使网络更好地将血管与背景分割开;此外,为了提高网络的性能,在编码部分的最后一层使用密集卷积网络解决网络过拟合问题,同时为了在一定程度上解决梯度爆炸、梯度消失的问题,在解码部分的每一层使用卷积长短记忆网络提升网络获取特征信息的能力。替换传统的卷积操作来解决血管边界非血管像素误分为血管的问题。

weixin_70923796的博客 783

SAP_ABAP_SD_BAPI清单案例教程——销售订单开票_BAPI_BILLINGDOC_CREATEMULTIPLE_VF01_S4版本

SAP BAPI(Business Application Programming Interface)是SAP系统中的一组规范和标准,用于从SAP系统中获取数据、输入数据和更新数据。这些API允许开发者以编程方式与SAP系统交互,而无需编写大量的自定义代码。2.1 Copy代码 直接可使用。2.2 VF01开票。

java_zhong1990的专栏 2214

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

上一篇: kotlin-list集合
下一篇: iOS-配置AppIcon
Client_Block
博客等级 码龄11年 33粉丝 61原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值