我的应用程序的Android版本和我的应用程序中集成了FAN。 它工作了几个月,但现在它正在显示" NO FILL "
Error Domain=com.facebook.ads.sdk Code=**1001 "No fill"**
UserInfo={NSLocalizedDescription=**No fill**,
FBAdErrorDetailKey={ msg = "**No fill**"}}
并且没有显示FAN广告。如果我输入了测试ID ,那么它会显示,但仅限于我的设备,而不是其他设备。
如何解决此问题" No Fill"?
compile 'com.facebook.android:audience-network-sdk:4.+'
在build.gradle中提到 我已经看到很多关于此的问题,但无法找到答案。
我已在下面的链接中看到:
答案 0 :(得分:3)
试试这个。它解决了我的问题。 you have to follow this steps for solve this problem在此处给出了所有屏幕截图和步骤。
愿这对你有所帮助。由于Facebook开发者控制台在展示位置中新创建的受众群体网络标签广告空间组中进行了更新。你必须按照这个步骤。可能有助于他人。
我还发布了截图以及步骤详情。
此处点击向上分组为appName,然后按照步骤操作。
答案 1 :(得分:2)
我想测试广告时遇到同样的错误。
错误:无填充错误代码[1001]无填充。我们无法向此人投放广告。
我没有注册AD,因为当时我的应用还没有上线。因此,我没有广告ID。发生错误时,我正在使用测试ID "YOUR_PLACEMENT_ID"
进行演示。因此,仅测试ID不足以在Facebook Ad中获得测试广告。
我找到了以下解决方案。
当您是initialize
AudienceNetworkAds时,只需启用测试模式即可。
AdSettings.setTestMode(true)
class AudienceNetworkInitializeHelper : AudienceNetworkAds.InitListener {
override fun onInitialized(result: AudienceNetworkAds.InitResult) {
Log.d(AudienceNetworkAds.TAG, result.message)
}
companion object {
internal fun initialize(context: Context) {
if (!AudienceNetworkAds.isInitialized(context)) {
if (DEBUG) {
AdSettings.turnOnSDKDebugger(context)
AdSettings.setTestMode(true)// for get test ad in your device
}
AudienceNetworkAds
.buildInitSettings(context)
.withInitListener(AudienceNetworkInitializeHelper())
.initialize()
}
}
}
}
我的观众网络SDK为
implementation 'com.facebook.android:audience-network-sdk:5.4.0'
并且在 5.6.0 中也可以使用。
答案 2 :(得分:1)
在Facebook批准您的应用之前,您需要添加测试设备以对其进行测试。这是获取设备哈希的方法。
NSLog(@"the test device hash is %@",[FBAdSettings testDeviceHash]);
运行该应用程序,然后从日志中复制testDeviceHash
,然后将其添加到FBAdSettings
。
[FBAdSettings addTestDevice:@"YOUR_TEST_DEVICE_HASH_CODE_HERE"];
您需要先执行
FBAdView
答案 3 :(得分:0)
我的问题解决了,直到我使用我的管理员帐户登录到Facebook应用程序并再次从谷歌播放下载我的应用程序。
为您提出的一些建议问题: 错误代码为1001的“No Fill”是一个常见错误,FAN没有将广告返回到您的广告。
确保以下事项: - 带有展示位置ID的广告状态(受众群体网络>广告空间>展示位置)必须为“最近启用并收到广告请求”(1) - 您的广告状态必须经过Facebook审核和批准。 (2)
如果(1),您可以尝试再次禁用和启用。 如果(2),您必须从谷歌播放+登录管理员帐户/或开发人员/测试人员(在角色选项卡中添加)下载Facebook应用程序),我建议使用管理员帐户登录;并直接从谷歌播放下载您的应用程序。
您说您的应用程序已经活动了一段时间,以上情况是正确的,最后一个是向Audience Network Team发送消息,他们将在3-5个工作日内回复。
答案 4 :(得分:0)
我设法解决了这个问题。我的步骤:
1。确保在您的代码中设置测试设备的哈希值
NSLog(@"%@",[FBAdSettings testDeviceHash]);
[FBAdSettings addTestDevice:@"YOUR_TEST_DEVICE_HASH"];
2。确保您使用正确的展示位置ID
- (void)loadNativeAd{
FBNativeAd *nativeAd = [[FBNativeAd alloc] initWithPlacementID:@"YOUR_PLACEMENT_ID"];
nativeAd.delegate = self;
NSLog(@"%@",[FBAdSettings testDeviceHash]);
[FBAdSettings addTestDevice:@"YOUR_TEST_DEVICE_HASH"];
[nativeAd loadAd];
}
对我有用。
答案 5 :(得分:0)
尝试此版本,并检查其是否正常工作
implementation 'com.facebook.android:audience-network-sdk:5.1.0'