记录一次接入Google智能音箱开发测试阶段的bug修复

记录一次接入Google智能音箱开发测试阶段的bug修复

在小米15 Pro(Android系统)上使用Google Home APP绑定云服务账号时,Google Home会调用默认浏览器跳转至云服务的H5登录页面。用户提交账号密码后,云服务的/oauth2/authorize端点签发授权码(code),并重定向至Google的OAuth回调地址https://oauth-redirect.googleusercontent.com/r/{project-id},随后应重定向回Google Home APP。但由于默认浏览器(如小米浏览器)不支持深度链接(Deep Link)或未正确处理重定向,最终页面显示404错误,停留在无效地址https://oauth-redirect.googleusercontent.com/a/com.google.android.apps.chromecast.app

根本原因

  1. 默认浏览器兼容性问题:部分Android默认浏览器(如小米浏览器)未正确处理OAuth回调的重定向逻辑,导致无法跳转回Google Home APP。
  2. Deep Link支持不足 :Google Home APP依赖Chrome浏览器对oauth-redirect.googleusercontent.com域名的深度链接支持,非Chrome浏览器可能无法触发APP的重新打开。

解决方案

将默认浏览器设置为Chrome

  1. 安装Chrome浏览器

    打开Google Play商店,搜索并安装最新版本的Chrome浏览器。

  2. 修改默认浏览器设置

    • 进入手机系统设置,找到「应用设置」或「应用管理」。
    • 选择「默认应用设置」或类似选项。
    • 在「浏览器」分类中,将默认浏览器从当前选项(如小米浏览器)更改为「Chrome」。
  3. 重新尝试绑定流程

    再次通过Google Home APP发起账号绑定流程,此时登录后的OAuth回调应由Chrome处理,并正确跳转回Google Home APP。

验证方法

  • 成功跳转后,Google Home APP应显示账号绑定完成状态。
  • 若仍失败,检查Chrome是否为最新版本,或尝试清除Google Home APP和Chrome的缓存数据。

补充说明

  • 其他浏览器兼容性:部分第三方浏览器(如Firefox)也可能支持此流程,但Chrome为Google官方推荐方案。
  • 系统级限制:某些国产Android系统可能限制默认浏览器的修改权限,需检查系统权限设置。

技术背景

OAuth流程中,oauth-redirect.googleusercontent.com是Google服务的专用回调域名,Chrome浏览器已预置对其深度链接的支持。其他浏览器可能因未实现相关协议或被系统限制,导致无法完成跳转。

相关推荐
ALGO阿狗5 天前
SimpleDateFormat(“YYYY-MM-dd“)格式化时间出现了bug?
bug
爱学习的小可爱卢7 天前
JavaSE基础-Java异常体系:Bug定位终极指南
java·bug·javase
GeekyGuru7 天前
代码诊疗室——疑难Bug破解战
bug
嵌入式×边缘AI:打怪升级日志9 天前
9.2.3 UART 驱动严重 Bug(保姆级讲解)
bug
qq_242188633212 天前
代码诊疗室——疑难Bug破解战
bug
专注前端30年13 天前
智能音箱产品系统架构深度解析(含案例+代码)
系统架构·智能音箱
Moshow郑锴13 天前
Java SpringBoot 疑难 Bug 排查思路解析:从“语法正确”到“行为相符”
java·spring boot·bug
人间花海14 天前
BUG终结者:挑战你的调试极限
bug
2401_8582861114 天前
OS54.【Linux】System V 共享内存(3) “共享内存+管道“修bug记录
linux·运维·服务器·算法·bug
Kurbaneli15 天前
代码诊疗室——疑难Bug破解战
bug