FB Audience コンポーネントに大きな問題があります。
iOS の Facebook Audience Network を placement_id と統合しましたが、異なるデバイスと FB アカウントの API の回答は常にこれです
[FBAudienceNetworkLog/FBAdProvider:137] 広告リクエスト エラー: エラー Domain=com.facebook.ads.sdk Code=1001 "No fill" UserInfo={FBAdErrorDetailKey={ msg = "No fill. この人物に広告を配信できません. https://developers.facebook.com/docs/audience-network/faq#a12を参照してください. Audience Network を初めて統合する場合は、テスト広告を使用できますhttps://developers.facebook.com/ docs/audience-network/testing ."; }, NSLocalizedDescription=塗りつぶしなし}
ドキュメント a12 も参照しましたが、「iOS 広告に制限なし」があり、すべてのアカウントは Facebook に記録されます。ドキュメントを注意深く読み、iOS と Android で「No fill」の状態を確認しました。
リストで Facebook ネイティブ広告を使用したいと考えており、必要な 5 つの要素ごとに 1 つの Facebook ネイティブ広告を表示します。
奇妙なのは、この場合です(同じデバイス上):
- DEBUG MODE でアプリをインストールすると、Facebook ネイティブ広告が正しく表示されます
- TESTFLIGHT を使用してリリース モードでアプリをインストールすると、Facebook ネイティブ広告が「No Fill」と応答する
- APPSTORE で同じ TestFlight アプリをリリースすると、Facebook ネイティブ広告は他の HTTP 要求をロックします。Charles ( http://www.charlesproxy.com/ ) 経由で確認しましたが、Facebook 呼び出しを読み込んでいるため、API 呼び出しが開始されません。これは、APPSTORE 経由でアプリをダウンロードするすべてのデバイスで発生します。
私たちのアプリは、Xamarin コンポーネントhttps://components.xamarin.com/view/fbaudiencenetworkiosを介して開発されています
本当に奇妙に思えるのは、同じデバイスの同じコードと、異なるリリース タイプの同じ FB ユーザー (私の Luigi Saggese) が異なる動作をすることです。
- デバッグモード: OK
- TestFlight を使用したリリース モード: 他の API 呼び出しをロックせずに「No Fill」
- App Store: 他の API 呼び出しをロックする応答がない
TestFlight モードでは、現実的と思われる StackOverflow でこの回答を見つけました ( iOS の Facebook Native Ads ) "Test Flight は IDFA のプールを循環し、ユーザーの真の IDFA を隠し、Facebook ユーザーを識別することを困難にします。広告を配信します。」