Expo Android应用因登录凭证问题遭Google Play拒审,求助排查及是否需原生代码
Expo Android应用Google Play登录审核失败排查方案
先排查非原生代码层面的问题(优先处理)
相同凭证在App Store审核正常,说明核心登录逻辑无问题,问题大概率出在Android端的特定配置或环境差异:
- 确认Android网络权限:检查
app.json中android.permissions是否包含"android.permission.INTERNET",Expo默认会添加,但手动修改配置后可能遗漏 - 检查Axios请求细节:
- 对比Android和iOS端的请求头(尤其是
User-Agent),部分后端会根据UA拦截非预期请求,可强制Android端使用与iOS一致的UA - 确认
baseURL是否使用HTTPS,Google Play审核环境对HTTP域名限制更严格;若使用自签名证书,需配置Android网络安全策略允许信任该证书
- 对比Android和iOS端的请求头(尤其是
- 后端日志分析:查看登录请求日志,确认Android审核请求是否到达后端、是否存在参数/IP被拦截(Google Play审核服务器IP可能不在后端白名单内)
- 模拟审核环境测试:用真实Android设备构建APK/AAB,通过VPN切换到美国IP(Google Play审核服务器多位于美国),测试登录流程
- 检查Expo SDK版本:旧版本SDK可能存在Android网络请求兼容性问题,尝试升级到稳定版SDK
是否需要添加原生代码?
- 90%以上的此类问题无需修改原生代码,优先完成上述排查步骤
- 若排查后仍无法解决,可通过Expo的config plugin配置原生参数(无需编写原生代码),比如自定义网络安全配置(在
app.json中添加android.networkSecurityConfig) - 只有当所有非原生方案均无效,且确认是Expo框架网络层的限制时,才考虑通过Expo Modules编写少量原生代码,或eject到原生项目,但这是最后选择
内容的提问来源于stack exchange,提问作者Mostafa Elkaramany
相关产品推荐
相关产品推荐

