I've been using Admob for 2 years. Recently I have decided to add Firebase to my Unity game. When I add Firebase SDK, Admob ads stopped working, only test ads are showing.
I was using Admob in my app, and it was working until I added Firebase to my app.
- Last version of firebase,
- last version of Unity Admob Official Plugin,
- last version of Unity In-App Purchases.
- All of SDK Manager SDKs updated and installed.
- Unity 2017.1.1f1
- .NET 4.6
- Firebase works.
- In-app purchases works.
When I try to use test ads for admob it also works.
All ad unit IDs are correct. Also I have defined App Id in application manifest. MobileAds initialized.
- When I try with old version of my app (without Firebase) it still works perfectly.
But when I try my ads, doesn't show any ads. There wasn't any error in Unity console while debugging, also there is not any error in runtime. Then I decided to look it with logcat.
Logcat gives the following messages while starting app:
W/Ads (23038): Not retrying to fetch app settings W/Ads
(23038): Not retrying to fetch app settings W/Ads (23038): Not retrying to fetch app settings W/Ads (21432): App does not have the required permissions to get location W/Ads (21432): App does not have the required permissions to get location W/Ads (21432): App does not have the required permissions to get location E/Ads
(21432): Error waiting for future. E/Ads (21432): java.util.concurrent.TimeoutException E/Ads (21432): at java.util.concurrent.FutureTask.get(FutureTask.java:176) E/Ads
(21432): at com.google.android.gms.ads.internal.util.future.g.a(:com.google.android.gms@14799007@14.7.99 (020304-223214910):12) E/Ads (21432): at com.google.android.gms.ads.cache.i.a(:com.google.android.gms@14799007@14.7.99 (020304-223214910):5) E/Ads (21432): at com.google.android.gms.ads.nonagon.signals.gmscore.q.call(Unknown Source) E/Ads (21432): at java.util.concurrent.FutureTask.run(FutureTask.java:237) E/Ads
(21432): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) E/Ads (21432): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) E/Ads (21432): at java.lang.Thread.run(Thread.java:818)
When I call an Interstitial or Rewarded Ad:
W/ActivityManager( 2860): getRunningAppProcesses: caller 10475 does not hold REAL_GET_TASKS; limiting output W/Ads (21432): App does not have the required permissions to get location
I need your help, please. I've working for about 1 year on this project. I don't want to change my ad provider because of that problem.
EDIT: I have made a little debug and looks like request works but failed to load. Failed to load response: No Fill. You can say "Every thing works fine it is a problem which caused from admob. Just wait one day." but it is not posssible because on old version of my app ads loads succesfully and there is not any error like no fill.
Also as an extra information I can build on Unity Internal and Unity Gradle, no errors but no ads.