使用Firebase一键式谷歌登录时模拟器报错求助
解决模拟器上OneTap谷歌登录报错
Missing Feature{name=auth_api_credentials_begin_sign_in, version=8}的方案 核心原因
这个报错本质是模拟器内的Google Play Services版本过低,不支持OneTap登录所需的auth_api_credentials_begin_sign_in v8 API特性——物理设备的Play服务通常会自动更新到最新版本,所以能正常运行。
具体解决步骤
1. 更换带Google Play的模拟器镜像
- 打开Android Studio的Device Manager,选中现有Pixel 5 API 31模拟器,点击右上角三点菜单→Delete删除。
- 重新创建模拟器:选择Pixel 5设备,系统镜像选API 31(Google Play)(注意区分于Google APIs版本),完成创建后启动模拟器。
- 启动后打开Google Play应用,完成账号登录,等待Play服务自动更新至最新版。
2. 手动更新Google Play Services
若模拟器的Play服务无法自动更新:
- 在模拟器中打开Chrome,搜索下载对应模拟器架构(x86_64/arm64)的最新Google Play Services APK。
- 下载后安装APK,安装完成后重启模拟器。
3. 升级项目中的Google Auth依赖
确保Module级build.gradle中的Auth依赖为最新稳定版:
dependencies { // OneTap登录核心依赖 implementation 'com.google.android.gms:play-services-auth:20.7.0' // 可选:若用到手机号验证相关功能 implementation 'com.google.android.gms:play-services-auth-api-phone:18.0.1' }
同步Gradle后重新构建项目。
4. 验证Google账号与配置
- 确认模拟器登录的Google账号已添加到Firebase控制台的测试用户列表(若项目开启测试模式)。
- 通过
./gradlew signingReport命令获取模拟器的调试SHA-1指纹,检查Firebase控制台中项目的SHA-1是否包含该值。
内容的提问来源于stack exchange,提问作者ItzDavi
相关产品推荐
相关产品推荐

