I just signed up for AdMob and have got it working in my app with test advertisements (using the simulator and my iPhone). I was wondering if you need to disable test ads somehow before publishing to the App Store?
Also, should you remove the test devices code?
E.g.
request.testDevices = #[ #"My_iPhone", kGADSimulatorID ];
You don't need to remove the test devices before you can publish. Its optional.
The kGADSimulatorID is for your emulator. keeping there there will not make any different. If you added your physical device as another test id, and want to get live ads now on that device, remove that.
Related
When trying to load rewarded ads I get the following error:
<Google> To get test ads on this device, set: GADMobileAds.sharedInstance.requestConfiguration.testDeviceIdentifiers = #[ #"a 32-character-string" ];
Loading test ads works, but when trying to show real ads, it says: Request Error: No ad to show.
Apple will not allow my App on the App Store, because the ads don't work.
I have not managed to fix this, since this article didn't help.
Adidionally, I have not used this in my code: .addTestDevice() and my Admob account is way older than 24 hours (it's possibly even many years old).
Is there a way to fix this?
depends, If you are using your own device or a simulator you cannot view your own adverts. you have to use a test ad id.
I also suspect that Apple was not holding your app because you did not follow one of their guidelines. You can find them on Apple's App Review page. If it is because the ads do not work, try the following:
remove the advertisements
upload to the app store
configure AdMob to use your AppStore id
update your app to include the advertisement later
This means there will not be a version of your app that breaks apple's placeholder content rule.
Apple also provides a test service called TestFlight and that may help you.
I am going to upload my application. I am using Google mobile ads in my app and I am testing via test ads ids. Now before deploying I have to put real admob ids in app for test. Is it OK to test ads after putting real ids on simulator?
Yes, if you have tested the functionality and ads were working with test id's then you can just use the production id's and it doesn't matter where you run the app then simulator/device.
I have a quick question regarding test ads. I have an app in the IOS AppStore that is using Google AdMob. I received an email today saying that my account was temporarily suspended for clicking on my own ads. I had test ads enabled in development to prevent just this; however, I removed the test ads in my final release.
My question is: Can I keep test ads on for my specific device?
In my code I have:
request.testDevices = [kGADSimulatorID, "My Device ID" ]
Since the ID is specific to my device can I leave it there in an AppStore release? or Will this cause issues in the future?
I just want to make sure I don't get a permanent suspension. Thanks!
-Matt
Since the ID is specific to my device can I leave it there in an AppStore release? or Will this cause issues in the future?
Yes, you can leave your device ID in the testDevices field for release, and it is in fact required by AdMob guidelines (as you seem to have found out). Since the ID is specific to your device, it will not cause any problems.
I'm integrated admob with my ios game and everything works great.
I can't find a "switch" option from test to production just like I have in other ad networks (vungle for example).
I can find zero information how to prepare it to be published (maybe it is too obvious?).
That makes me very uncomfortable, because I want to make sure the ads will be real ones and I will get paid for that.
for example, should I remove my device id from request testing property?
should I not worried because admob is smart enough to figure out if it is production or testing?
please help
The ads are already live. They provide the test devices dictionary so that it can detect its a test ad. If you ran the app on a device which isnt in the test devices dictionary, you will receive live ads. Obviously AdMob will block your service if you purposefully make real requests from development.
I accidentally ran an app on a device that wasnt in the test devices and I got a real advert. I'm sure it happens often so they probably excuse a certain amount of accidental real requests.
for example, should I remove my device id from request testing property?
Yes, you should remove your Test ID in your distribution release. Only use the Ad Unit ID given to you by AdMob to request ads in your distribution release.
I can't find a "switch" option from test to production just like I have in other ad networks (vungle for example).
There is no switch for you to turn on when you plan to build your application for distribution. If you're successfully receiving test ads on your device then you've implemented the advertisements correctly.
That makes me very uncomfortable, because I want to make sure the ads will be real ones and I will get paid for that.
You can receive live ads before the release of your application in the App Store by removing your Test ID and running your application on a real device.
I have implemented admob banners into many iOS apps, and never had this problem. Now, using the same sdk version, same code, and a variety of IDs that currently work in other app projects, this one project gives the following output and does not display a banner:
To get test ads on this device, call: request.testDevices = #[ GAD_SIMULATOR_ID ];
Why does it only happen in this Xcode project and how can I fix it? I'm not looking to find out how to enable testing mode. I want to get it to work just like all my other apps without testing mode.
Thanks!
It always displays that message. It i letting you know that if you want test ads to set the testing id. If you are not getting a banner then something else is occurring. Perhaps you have no ad fill or have misconfigured the ad.