シミュレーターでAdmobをテストしているときに、以下のエラーがスローされます
このデバイスでテスト広告を取得するには、次を呼び出します。request.testDevices= [NSArray arrayWithObjects:GAD_SIMULATOR_ID、nil];
私のコード
bannerView_ = [[GADBannerView alloc] initWithAdSize:kGADAdSizeBanner];
bannerView_.adUnitID = @"8de66ecc3525495d";
bannerView_.rootViewController = self;
[self.view addSubview:bannerView_];
GADRequest *request = [[GADRequest alloc] init];
request.testing = YES;
[bannerView_ loadRequest:request];
それをアーカイブするように私を導いてください。前もって感謝します..
最後にバグの友達を修正します。
adUnitIDの生成を間違えました。だから私だけが広告を見ることができません。
次に、テスト用にxxxxサイトから1つadUnitIDを取得します。そして、その正常に動作しています。
adUnitID = @"a14dccd0fb24d45";
すべてのサポーターに感謝します。
テストデバイスを追加する必要があります。 Swiftでは、交換するだけです
bannerView.load(GADRequest())
と
let request: GADRequest = GADRequest()
request.testDevices = [kGADSimulatorID]
bannerView.load(request)
IPhoneをお持ちの場合は、アプリケーションも実行するとIDが表示されます。
このデバイスでテスト広告を取得するには、次の電話番号に電話してください:request.testDevices = @[@"HERE IS THE ID"];
追加されたID:
let request: GADRequest = GADRequest()
request.testDevices = ["PUT HERE THE ID", kGADSimulatorID]
bannerView.load(request)
これは私のために働きます:
(GADRequest *)request {
GADRequest *request = [GADRequest request];
// Make the request for a test ad. Put in an identifier for the simulator as well as any devices
// you want to receive test ads.
request.testDevices = @[
// TODO: Add your device/simulator test identifiers here. Your device identifier is printed to
// the console when the app is launched.
GAD_SIMULATOR_ID
];
return request;//thanks
}
私はこれを行っていました:
GADRequest *request = [GADRequest request];
// Make the request for a test ad. Put in an identifier for
// the simulator as well as any devices you want to receive test ads.
request.testDevices = [NSArray arrayWithObjects:GAD_SIMULATOR_ID, nil];
[gAdBannerView loadRequest:request];
私が定義する場所
// Constant for getting test ads on the simulator using the testDevices method.
#define GAD_SIMULATOR_ID @"Simulator"
私は現在これを使用しています。シミュレーターでも動作します。エラーが発生しましたが、エラーではありません。広範囲に検索したところ、より有益なメッセージであることがわかりました。
重要な点は、テストモードがNOに設定されている場合は実際の広告を表示し、テストモードがYESに設定されている場合は「成功しました。広告銀河を移動する準備ができました」というメッセージを表示することです。したがって、アプリにいずれかの結果が表示されている場合は、問題ないはずです。 :)
私のコードは次のとおりです。
GADBannerView *bannerView_ = [[GADBannerView alloc] initWithAdSize:kGADAdSizeBanner];
bannerView_.adUnitID = GOOGLE_UNIT_ID;
GADRequest *request = [GADRequest request];
bannerView_.delegate = self;
bannerView_.rootViewController = self;
// Make the request for a test ad. Put in an identifier for
// the simulator as well as any devices you want to receive test ads.
request.testDevices = [NSArray arrayWithObjects:
GAD_SIMULATOR_ID,
nil];
// Initiate a generic request to load it with an ad.
[bannerView_ loadRequest:request];
テストをYESに設定しませんでした。私のGoogleAdMobsSDKのバージョンは6.5.1です
本番環境でヘルプが必要だと言っていたので、とにかくテストモードに設定しないでください。したがって、おそらくテストモードなしで実行する必要があります。
シミュレーターで実行するか実際のデバイスで実行するかは問題ではないという質問を見ると、両方のデバイスで実行する必要があります。コードでデリゲートをselfに設定したので、同じようにすると、次の方法を使用できます。
- (void) adView: (GADBannerView*) view didFailToReceiveAdWithError: (GADRequestError*) error
- (void) adViewDidReceiveAd: (GADBannerView*) view
これらは、シミュレーターで実行している場合でも、広告を受信したかどうかを確認するのに役立ちます。
お役に立てれば! :)