Android集成Firebase Auth Twitter登录返回403:客户端请求被拦截
Android Firebase Auth Twitter登录403错误解决
问题详情
已按照Firebase官方文档实现Android应用的Twitter登录功能,在Twitter应用设置页配置了OAuth重定向URI my-app-xxxx.firebaseapp.com/__/auth/handler,但调用以下代码时:
FirebaseAuth.getInstance() .startActivityForSignInWithProvider( /* activity= */requireActivity(), provider.build())
浏览器打开后返回403错误:
{"error":{"code":403,"message":"Requests from this Android client application are blocked"}}
错误截图:
解决步骤
检查Twitter应用的Android配置
登录Twitter开发者后台,进入目标应用设置,找到「Android」配置项:- 确认填写的包名与Android项目的包名完全一致
- 确认添加的SHA-1签名指纹正确:调试环境用Android Studio生成的调试SHA-1,发布环境用正式签名的SHA-1,且该指纹需与Firebase项目设置中的SHA-1匹配
验证Firebase Auth的Twitter提供商配置
登录Firebase控制台,进入「Authentication」>「登录方法」:- 确认Twitter提供商已启用
- 检查填写的API密钥和API密钥密码,是否与Twitter开发者后台「API密钥与令牌」中的内容完全一致
核对重定向URI
在Twitter应用的「OAuth 2.0」或「OAuth 1.0a」设置中,确认重定向URI与Firebase提供的地址完全匹配,无多余空格或字符错误确认应用签名一致性
若使用App Bundle发布到Google Play,需确保Google Play生成的应用签名SHA-1已添加到Twitter后台和Firebase项目设置中;调试阶段使用本地调试签名的SHA-1
内容的提问来源于stack exchange,提问作者Omar Qadomi
相关产品推荐
相关产品推荐

