Real ads (admob) not showing up in Live app - ios

I have a lite version of one of my app live in apple store. I have integrated admob in that.
I was successfully able to see ads while testing, both test ads & real ads sometimes. Now as the app is live, I can notice only test ad is showing up.
"this is a test ad"
Link to app, cheque Track

Please check the following points before publish your app.
You should use iPhone app id of AdMob to display ads on iPhone and iPad app id of AdMob to display ads on iPad. Because there is no universal type app in AdMob.
In case of BannerView use size provided by the AdMob SDK. Please don't use your custom defined size and use origin with appropriate value.
Click on the your project -> goto build settings -> add value to "Other Linker flag" to "-ObjC".
To know errors or loading successful or not define delegate methods provided for specific add and don't forget to assign "self" to ad's delegate property.
Always use latest SDK.
Test mode off in app setting of AdMob app.
After performing these steps and modifying code, it is time to test your app by creating ipa of the app in real device. In iOS 7 if you run iPhone app in iPad [UIDevice currentDevice].model returns "iPad" . So check iPad ipa in iPad and iPhone ipa in iPhone.
two use links to create ipa and install it in your device.
create ipa link
install ipa on your device
Please inform if any issue comes. Thanks

read this somewhere.. thought it might help
log in to your AdMob account, go into "Sites And Apps", hover your mouse pointer over the App in question and click on "Manage Setting". Then, click on the "App Setting" tab and you will see a "Test Mode" option. In that, select the "Disable test mode for all requests" option and hit "Save Settings" at the bottom.

-(void)adViewDidReceiveAd:(GADBannerView *)bannerView;
-(void)adView:(GADBannerView *)bannerView didFailToReceiveAdWithError:(GADRequestError *)error;
There can be number of reasons for not showing the Live ads.
Check your google admob account for the payment info. If not filled, fill it.
Check if your device is registered as test device, else you may get suspension from the google for 30 days or so.
Use correct platform and ad unit ID from the admob account for live ads and wait for a while, it takes time to show ads.
You can check the delegate methods and print the logs:
In my case, I was getting error as { 'error': 'Request Error: No ad to show.', 'adType':'banner' }.
But it showed at the client side, after I delivered to the client. So, I think that this issue was due to the reason that google had no advertisements in my region.

Related

AdMob & Unity for iOS with custom AdUnit not showing Ads

I'm having trouble with adMob (like I specified in the title) on my iOS game made with Unity.
I'm using Unity 5.5.5p1 with the adMob plugin.
Everything was fine when I use the testing adUnits, testing ads are showing perfectly, until I use the custom ones pasted from my adMob profile.
I'm building in release mode and my game isn't on the AppStore yet.
Thanks for the attention payed, any suggestion?
First of all, check if there's any whitespaces at the end of your copied ad unit id. It's the most common cause of not showing ads.
If that's fine, then most probably, you are getting no fill matching your custom AdUnit request, which is quite common in admob. If it doesn't get the matching size, it fails to show the ad.
You can see the debug log in the console for your connected device with actual ad id. If it shows, No Fill, then you may get sure that there's no ad currently available in the admob network, matching your given size.
I always prefer using the default sizes of admob, as they are more popular, there's always available ads in the network.

Apple Developer Does this app use the Advertising Identifier (IDFA)?

I am uploading my game to the app store does this question of saying yes to my app containing the IDFA matter if I am using google ad mob?
I use Appodeal which use Ad Mob and I have to check :
- Save Advertisements within the App
- Atribute this App installation ....
- Limit Ad tracking setting in IOS
Few very simple steps you need to follow:
If you have no Ads in your Application than simply click no & submit
If your App contains Ads than click on Yes & it will show you few more check boxes
If you are just showing ads in the Application no other process is there than simply choose first option "Serve advertisement within App"
Hope it will help you.

Admob iOS: Getting com.google.DummyAdapter on real device, works on simulator

I am having this issue with Admob:
Cannot find an ad network adapter with the name(s):
("com.google.DummyAdapter"). Remember to link all required ad network
adapters and SDKs, and set -ObjC in the 'Other Linker Flags' setting
of your build target.
I have read that this could be due to a "no-fill" problem when asking for a network adapter, but this is happening to me only if I try on a real device. If I try it on the simulator, I receive the ads correctly.
Any ideas?
Cannot find an ad network adapter with the name(s): com.google.DummyAdapter. Remember to link all required ad network adapters and SDKs, and set -ObjC in the 'Other Linker Flags' setting of your build target.
If you faced with the error above, consider the options below:
There were no ads to be served from any of the networks in the mediation stack.
There are no ads to show in your country or region (If so try via VPN). This would include the AdMob network.
it might just be an issue with your account. Also, please double check your Ad Unit ID. You can try with another account (Ad Unit ID) to be sure about your implementation.
Best
Well, I fixed in a weird way. I read that some people where having this issue due to eCPM being to high or something like that. So, I went to my AdMob configuration to check it and everything seemed fine, but just in case I re-save the settings and violá, ads starting to work again.
This is the steps that I made:
Go to AdMob administration
Click on Monetize tab
Click on your problematic app
On the ad block, click on the link on the mediation column
Click on AdMod Network
Don't change anything, save data again
Hope this works for somebody...
THIS WORKED FOR ME:
Just make sure that "Limit Ad Tracking" is "turned off" in your iPhone's settings under Privacy > Advertising.
And try to Reset your Advertising Identifier.
THIS MAY BE HELPFUL FOR SOMEONE!!!
I got the same error when I used the Ad Unit Ids defined in the AdMob app for testing on my iPhone. Of course the device has to be registered as a Test Device. I was adding the Test Device Id programmatically.
This is where I went a wrong route. The documents has clearly mentioned steps on how to register a device as a Test Device. Instead all that I somehow made my mind to register the device's UDID as the Test Device Id(This is the mistake I made. Now I accept that it is purely my ignorance). After searching through most of the solutions provided in SO, and some of the other blogs, I just wanted to try the AdMob UI to add a test device. There I saw Advertising ID/IDFA which had a link on how to find the advertising ID/IDFA.
AdMob -> Settings -> Test Devices -> Add Test Device
Just to reiterate the steps which fixed the issue for me:
Take/copy the Ad Unit Ids which you defined in your AdMob app
Put those Ad Unit Ids in your code.(I used xcconfig files to separate Dev vs Prod)
Run the app by now you might have setup all your ad plugging code
Check the Xcode console(important), there you will see the Test Device Id suggested by Google. Which will look something like below:
<Google> To get test ads on this device, set:
GADMobileAds.sharedInstance.requestConfiguration.testDeviceIdentifiers = #[ #"2077ef9a63d2b398840261c8221a0c9b" ]; // Pay attention at this bolded id, this is the one which we want.
The above code is in Obj-C. Use the below code in Swift 5+
GADMobileAds.sharedInstance().requestConfiguration.testDeviceIdentifiers = ["2077ef9a63d2b398840261c8221a0c9b"]
Take away: Test Device Identifier is not UDID of the device but the Advertising Identifier. Check this: https://support.google.com/admob/answer/9691433?hl=en#ID
Tip: I used the Dev.xcconfig file to add the Test Device identifiers, so that the Prod.xcconfig is clean without those test device ids and the app can be submitted without any code changes.
/// Extract those test device ids from the xcconfig file.
if let testIDs = self.extractTestDeviceIDs() {
debugPrint("FOUND: test IDs: ", testIDs)
GADMobileAds.sharedInstance().requestConfiguration.testDeviceIdentifiers = testIDs
} else {
debugPrint("NOT FOUND: test IDs")
/// NoOp: This has to be prod environment
/// If the test IDs are not configured, then also Ads should be initialized.
}
GADMobileAds.sharedInstance().start { initStatus in
debugPrint("GAD Ads... Init Status: ", initStatus)
}
I got the error "Cannot find an ad network adapter with the name(s): ("com.google.DummyAdapter")." when i tried to implement a rewarded ad, when i had only a banner ad configured in Admob.
After adding a rewarded ad to admob for the app, the error disapeared.
here is what problem we had. initially we used the same app id and add id for android and ios. Later we thought to analyze them separately and hence created a new ios Add app and created a new add. now in the code we added the newly created add for ios. However we forgot to update the info.plist with the new app id.
Another potential reason:
Caution: If you set up an app-ads.txt file for your app, you need to
also include this line in your app-ads.txt file in order to load ads
using the demo ad units:
google.com, pub-3940256099942544, DIRECT, f08c47fec0942fa0
Alternatively, you can enable test devices and use your own ad unit IDs instead.
Source: https://developers.google.com/admob/ios/test-ads#enable_test_devices
Try Setting Other Linker Flags as -ObjC in Linking section of Build Settings.

libGDX with MoPub (integrating AdMob) using RoboVM project for iOS

I am building a game using the latest (as of date) libGDX nightlies , RoboVM nightlies, and MoPub bindings that are available here. I used MoPub bindings to show AdMob ads, and I managed to show AdMob test ads on iPhone simulator; however, only test ads are shown on the simulator, and I have not specified any code to show test ads.
The question is: is this normal? is it always going to be test ads on simulator? will real ads show normally on devices?
Thank you.
Ahmad,
It is normal to see test ads once you have integrated. You should be able to see actual creatives from AdMob once the ad network is setup within your MoPub dashboard. It would take some refreshes to get the ads cached but then it would be serving to your simulator.
Another way to test the type of creatives that are coming in is to select ‘Test Ad’ in the Inventory tab over at mopub.com. In the Chrome browser, content may be blocked from being loaded. A shield icon in the address bar will appear. Click on the shield and then click on ‘Load unsafe script.’ Then click the ‘Run Again’ button.
You should be using your AdMob's 'Ad Unit ID' and not the 'Legacy Publisher ID.' I know it may be confusing as within MoPub's dashboard it mentions to have the 'Publisher ID' but really it should be the 'Ad Unit ID' from AdMob that should be entered.
Please consult this guide for more info: http://help.mopub.com/customer/portal/articles/1376821-how-to-set-up-updated-admob-revenue-reporting
Do you have marketplace feature enabled and seeing request/impression counts coming in?

App Attribution not displayed on iOS

I am using SSO in my application, and I see my application in Facebook for iPhone "Apps" section, and when tapping on it it launches my app. This is normal and works perfectly. Now, when I use a feed dialog on my App to publish a feed story, I do not see the App Attribution next to the "via APP_NAME" like I should. I also marked my app as "SSO enabled" in the apps settings.
Do you have any idea why it's not showing up the little icon to launch my app on the iOS device?
Thanks a lot
After facing the same issue i finally got it to work. You need to make sure that in your facebook app settings you have set the "app namespace" under the "Basic Info" section. After I've set it, it took several minutes to propagate throughout their servers but then it worked for all the stories published by the app.

Resources