Breaking change: Mobile Advert

  • In R156 we have updated the Mobile Advert plugin on Android to use version 18 of the AdMob SDK. This change is due to hit the stable channel soon, and after talking to a few confused users I wanted to clarify a problem they have been experiencing.

    With this update to the SDK comes the requirement that the AdMob App ID must be specified at build time. To comply with this it is now required that you specify your Android App ID in the Mobile Advert plugin properties. If you do not specify it the project will fail to build ( this may change ) and if you choose an invalid value for your app ID the application will be crashed by the SDK on startup.

    Edit: For reference your "Admob App ID" is not the same as the value you use with Google play known as the "app ID" or "package ID". The sample ID that admob gives is "ca-app-pub-3940256099942544~3347511713" so it should resemble that. Admob provides this support article on finding your Admob app ID.

    Some of you will be using the "Configure" action to set up the plugin, while it is not marked as so yet this is effectively depreciated going forwards. The plugin will perform this step for you at start up if the application ID is specified. I know some people have been using this to avoid showing the user consent dialog to users immediately, if you want to avoid this then you can change the "Locations to show user consent dialog" property to "nowhere" and call the "Show User consent dialog" action when you wish to trigger it.

    Versions prior to r156 are not affected by these changes and will not be changed by future revisions. For those of you also building for iOS we haven't updated the SDK version on iOS yet, but it will have a similar requirement once we have. Once the update for iOS is completed it will not affected releases of construct prior to that update being published.

    We intend to add additional checks to the editor to improve the experience around this going forwards, but this will occur during the next beta cycle.

    You can read about the change to the Admob SDK here. If you have any issues with the change, or questions then let me know.

    Edit: on the first of July we updated the build server to give a more descriptive warning if your application ID is absent. This will only warn you if it is absent, not if it is invalid. Additionally we resolved an issue where iOS builds did not work unless the Android App ID value was specified.

  • Thanks for the heads up! :)

  • thank you very much for the information, I suffered the first few hours thinking about what time I broke my application by just placing some comments on some lines haha

  • Thank you so much that help's

  • I am new to admob so my question may sound like a joke

    if i will enter the id then will not my admob account be banned ? (There was something like this in the manual)

  • Abhishek Thapliyal

    if you choose an invalid value for your app ID the application will be crashed by the SDK on startup

    It's a requirement by the SDK, it will not get your account banned. What the documentation says is that you should use testing mode with adverts during development. If you do not use testing mode then you will see real adverts that Admob are charging some company for, hence why they consider it a ban-able offense. Testing adverts will have a small label at the top that says "test ad", if you do not see this close the application immediately and rebuild it with test mode enabled. They are normally lenient if you see 1 or 2 by accident

  • Nepeo

    This means that "TEST" will not work from now and we will have to enter the real application id ? And it is right that i have to tick the "Test mode" so that my admob account does not get banned?

    And i hope that here also i have to fill the real ad id(not application id) instead of "TEST"?

    Thanks for the answer

  • And also what is publisher id ?

  • Abhishek Thapliyal please read the manual page, it explains what a publisher ID is and where to find it. The TEST keyword is a legacy feature that was removed some time ago, I realised this morning that there was still a reference to it in the manual page so I removed it.

    The TEST keyword was basically a substitute for the example Admob ID values, but Admob considers them a special case and hence they often work when a real Ad unit ID wouldn't. Making them pretty useless for testing.

  • Abhishek Thapliyal please read the manual page, it explains what a publisher ID is and where to find it. The TEST keyword is a legacy feature that was removed some time ago, I realised this morning that there was still a reference to it in the manual page so I removed it.

    The TEST keyword was basically a substitute for the example Admob ID values, but Admob considers them a special case and hence they often work when a real Ad unit ID wouldn't. Making them pretty useless for testing.

    Thanks for the answer but again a new doubt rises

    Construct 3 is asking for app id for both android and ios whereas on admob site,i only got one app id.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • Like this

  • When you create an "app" on admob you select a platform, then you get an app ID for that platform. You can see on the left that you have selected Android.

    If you create another "app" on admob for iOS it will have a different app ID.

  • Hello there,

    I'm trying to use Admob, in Construct 3 Addon Manager, it show version r142.2. I'm not sure if it is latest or not and how do I update it but when I build to device, I got the following error.

    [NetworkInfo] Signal strength query returned error: Error Domain=NSPOSIXErrorDomain Code=13 "Permission denied", descriptor: <CTServiceDescriptor 0x280983560, domain=1, instance=1>

    THREAD WARNING: ['ConstructAd'] took '115.951904' ms. Plugin should use a background thread.

    Task <6A915F77-D23B-4520-BF9B-C81685FEC648>.<1> finished with error - code: -1002

    ERROR: Rejection from 'advert' handler 'Configure': unsupported URL

    [C3 advert] Event (configuration failed Error (unsupported URL) Type () Amount (0))

    WF: === Starting WebFilter logging for process Hom Hom

    WF: _userSettingsForUser mobile: {

    filterBlacklist = (

    );

    filterWhitelist = (

    );

    noOverridingAllowed = 1;

    restrictWeb = 1;

    useContentFilter = 0;

    useContentFilterOverrides = 0;

    whitelistEnabled = 0;

    }

    WF: _WebFilterIsActive returning: NO

    <Google> To get test ads on this device, call: request.testDevices = [ @"9c67c9da129973a095c648d6cff93ffb" ];

    <Google:HTML> You are currently using version 7.32.0 of the SDK. Please consider updating your SDK to the most recent SDK version to get the latest features and bug fixes. The latest SDK can be downloaded from goo.gl/UoiJ8F. A full list of release notes is available at developers.google.com/admob/ios/rel-notes.

    [C3 advert] Event (interstitial created Error () Type () Amount (0))

    I did check all the setup is corrected. Would you please help?

  • Don't take me wrong but i would request the construct team to make a template for admob and make it available in the start page of the editor. Inspite of doing everything i am failing to implement admob in my game.

    Link of my template where i am trying to learn but getting unsuccesssful everytime.Remember ,in this file ,i have edited the number so that nothing goes wrong.For that ,one will have to enter their own data(android app id etc)

    drive.google.com/open

  • Hello there,

    I'm trying to use Admob, in Construct 3 Addon Manager, it show version r142.2. I'm not sure if it is latest or not and how do I update it but when I build to device, I got the following error.

    > [NetworkInfo] Signal strength query returned error: Error Domain=NSPOSIXErrorDomain Code=13 "Permission denied", descriptor: <CTServiceDescriptor 0x280983560, domain=1, instance=1>

    > THREAD WARNING: ['ConstructAd'] took '115.951904' ms. Plugin should use a background thread.

    > Task <6A915F77-D23B-4520-BF9B-C81685FEC648>.<1> finished with error - code: -1002

    > ERROR: Rejection from 'advert' handler 'Configure': unsupported URL

    > [C3 advert] Event (configuration failed Error (unsupported URL) Type () Amount (0))

    > WF: === Starting WebFilter logging for process Hom Hom

    > WF: _userSettingsForUser mobile: {

    > filterBlacklist = (

    > );

    > filterWhitelist = (

    > );

    > noOverridingAllowed = 1;

    > restrictWeb = 1;

    > useContentFilter = 0;

    > useContentFilterOverrides = 0;

    > whitelistEnabled = 0;

    > }

    > WF: _WebFilterIsActive returning: NO

    > <Google> To get test ads on this device, call: request.testDevices = [ @"9c67c9da129973a095c648d6cff93ffb" ];

    > <Google:HTML> You are currently using version 7.32.0 of the SDK. Please consider updating your SDK to the most recent SDK version to get the latest features and bug fixes. The latest SDK can be downloaded from goo.gl/UoiJ8F. A full list of release notes is available at developers.google.com/admob/ios/rel-notes.

    > [C3 advert] Event (interstitial created Error () Type () Amount (0))

    I did check all the setup is corrected. Would you please help?

    Yours is very old.The latest one is r157.Update it and then retry

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)