You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

接入Facebook登录SDK时app-ads.txt验证不通过如何解决

React Native应用Facebook app-ads.txt校验失败解决方案

问题描述

  • 已上架Google Play Store的React Native应用集成AdMob,服务器部署的app-ads.txt已通过Google官方验证,所有功能运行正常
  • 待发布的新版本新增Facebook登录功能,已在Facebook开发者后台创建对应应用,但后台通用设置板块要求在app-ads.txt中添加指定配置行完成应用所有权确认,未通过该步骤则无法将Facebook应用切换为live上线模式
  • 应用本身未投放Facebook广告,先后测试4种配置组合提交校验,Facebook均提示错误、验证失败,测试的配置内容如下:
facebook.com,MY_FB_ADVERTISING_PERSONAL_ACCOUNT_ID,DIRECT,c3e20eee3f780d68
facebook.com,MY_FB_ADVERTISING_BUSINESS_ACCOUNT_ID,RESELLER,c3e20eee3f780d68
facebook.com,MY_APP_FB_ID,RESELLER,c3e20eee3f780d68
facebook.com,MY_APP_FB_ID,DIRECT,c3e20eee3f780d68
  • 已完成基础排查:将服务器上的app-ads.txt重命名后,Facebook提示未找到有效文件,可排除URL配置错误、Play Store登记的开发者网站地址有误的问题
  • 待确认问题:一是app-ads.txt的正确配置写法,二是当前集成Facebook登录的新版本尚未上架Play Store、商店仅存首个正式版本的情况,是否会影响验证结果

具体解答

未上架新版本确实会直接阻断验证

Facebook的app-ads.txt校验逻辑,是先抓取Google Play当前全量公开的正式上架版本的包信息,匹配包内集成的Facebook SDK关联的应用ID,再拉取开发者站点下的app-ads.txt做内容匹配。你当前线上的正式版本没有集成Facebook SDK、也没有写入对应Facebook应用ID的关联配置,Facebook爬虫抓不到对应关联关系,哪怕文件内容写对了也会返回校验错误。
等你把集成Facebook登录、在AndroidManifest里配置好对应Facebook app ID的新版本正式上架,等Play Store的版本信息完成全球同步(通常需要24-72小时),再提交校验这部分的阻断就会消失。

你之前测试的配置写法全部错误

Facebook所有权校验要求的配置行,第二个字段既不是个人广告账户ID、企业广告账户ID,也不是Facebook应用ID,必须填写该Facebook应用绑定的商务管理平台(BM)的数字ID,正确的固定格式为:

facebook.com,你的商务管理平台ID,DIRECT,c3e20eee3f780d68

配置时需要注意几个细节:

  • 关系类型必须填DIRECT,不要用RESELLER,后者是广告经销商的标识,不适用于应用所有权验证场景
  • 确认app-ads.txt文件为UTF-8无BOM编码,文件内不要有多余的全角符号、异常空行、注释内容混在Facebook配置行附近
  • 文件必须公开可访问,返回HTTP 200状态码,不要设置登录鉴权、不要做跨域重定向
  • 原有AdMob的有效配置不需要删除,直接把Facebook的配置行追加到文件末尾即可
  • 如果站点用了CDN加速,修改完文件后必须主动刷新CDN缓存,Facebook爬虫的缓存更新周期为24小时,修改后至少等待半天再提交校验,不要反复点击触发校验

规则说明

即便你完全不投放Facebook广告,只要使用了Facebook登录、分享等面向开发者的平台服务,现在平台统一要求通过app-ads.txt完成应用所有权校验,属于强制规则,没有绕过路径。


内容的提问来源于stack exchange,提问作者ED Bowman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 15:36:16