Question - General Regarding Admob SDK Update for Google Play Services extension by YoYo Games

H

HW.

Guest
Google Play Services extension by YoYo Games, last update on Dec 2016,
Changes in 2.9.0
Updated iOS SDK to 7.16.0, added flags to .plist for App Transport Security settings Changed default Android login behaviour to not attempt automatic login - modify onStart() in GooglePlayServicesExtension\AndroidSource\Java\GooglePlayServicesExtension.java if you wish to revert to the previous behaviour.


Version 2.9.0. Published December 21, 2016


Created with GameMaker: Studio v7.7.1380
LINK: https://marketplace.yoyogames.com/assets/2008/google-play-services

Prologue

It is December 22, 2017 today, so It has been a full one year, since last time it was updated!

Google Admob Warning and My Questions
Beginning Jan 23, 2018, Google Mobile Ads SDK versions older than 7.0.0 for Android and 7.0.0 for iOS will no longer be supported. Publishers with these older versions will not be able to serve ads in their apps(s). Please ensure that you have upgraded to the latest version of the Google Mobile Ads SDK.
Just got that important notification from Google on my Admob dashboard, and i have some questions related to it:

Question 1: Is the Google Mobile Ads SDK version for Android on this outdated Google Play Services extension already newer than that?

From what i can read from the release notes on that one year ago, it only mentioned "iOS SDK to 7.16.0". I don't know whether it is the mentioned Admob SDK or the Google Play Services SDK in general?

(greyed, already Answered below)

Question 2: The important thing, Newer or still older from that version number. There have been new versions released by Google above that version, multiple times this year! The GPS extension hasn't been updated yet to support it. When will YoYo want to update again the essential Google Play Services extension with the latest Admob SDK?

(The latest Admob SDK includes enhancements, bug fixes and the 'rewarded video ads' feature which have been strongly wanted by GMS2 Mobile users.)

Crashes/Errors

Recently i have seen many crashes/errors reports on my Google dev acc related to Google Play Services extension. My games are developed with GMS2 Mobile and using the v 2.9.0 Google Play Services extension.

Example of crash errors:

Dec 19, 10:45 AM on app version 1000001
Oppo A37f (A37f), 2048MB RAM, Android 5.1
Report 1 of 1
java.lang.NullPointerException:

at com.xxxxxxxx.xxxxxxxxxxxxx.GooglePlayServicesExtension$8.run (GooglePlayServicesExtension.java:1176)

at android.os.Handler.handleCallback (Handler.java:739)
at android.os.Handler.dispatchMessage (Handler.java:95)
at android.os.Looper.loop (Looper.java:160)
at android.app.ActivityThread.main (ActivityThread.java:5541)
at java.lang.reflect.Method.invoke (Native Method)
at java.lang.reflect.Method.invoke (Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:964)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:759)
Recently, I and more people here (please read other threads) have been getting many crash reports similar or related to the extension. I don't know whether it is caused by the lack of recent bug fixes on the outdated version? But, i am certain that it is not a device specific only to Oppo or whatever, as there are also crash reports on popular devices such as latest Samsung flagships, etc. and it mentions the "keyword" GooglePlayServicesExtension$8.run (GooglePlayServicesExtension.java:xxxx) on it.

Request/Suggestion

I am sure there are many people here missing your update for the extension!
(~really matters especially for your current and future GMS2 Mobile license owners).

A humble request to YoYo, please take a special care to your official extension. Could you please update the Google Play Services extension with the latest Google Mobile Ads SDK?

Edit: (Update)
Just google search and found these links:
https://developers.google.com/admob/android/rel-notes
https://developers.google.com/admob/ios/rel-notes

(the IOS 7.16.0 number seems related to this iOS thing, but here i ask for Android, which is using a separate SDK), so my questions (1) and (2) still need answers.

Oh.. and after looking at those links, there are LOTS of releases this year and YoYo didn't update at all of those this year (based on the last update of the extension was on Dec 2016). OMG! :eek: Seriously please.. it is very outdated then! Please look at both of two links and see the release notes in 2017. Many bug fixes are there.

(i am sad now reading those complete lists of release notes :(:( , at the near end of 2017 to the upcoming 2018, realizing that my games developed by new GMS2 Mobile using obsolete SDKs! But i still have hope that YoYo wants to respond to this and will release the latest update as soon as possible).
 
Last edited by a moderator:
K

KBeeeR

Guest
you are right ! me too i need answers also for your questions..
that extension needs an update and add the reward ads... and also you have to make it easier to use mediation with admob... i have about 20% fillrate thats realy atupid -_- yoyo games just stop ignoring us.
 
  • Like
Reactions: HW.

Andrey

Member
I'm also interested in this topic. I would like to have answers.
I can be wrong, but judging by the file GooglePlayServicesExtension.extension
there is specified com.google.android.gms: play-services-games: 9.6.1
That is, apparently, version 9.6.1 is used.
 
  • Like
Reactions: HW.

issam

Member
Mai I ask please? I have more than 20 applications on playstore since 12/2016 I published the first one, I use the same SDK extension for all of them as I remember, is that mean I have to update them all?
 
  • Like
Reactions: HW.
H

HW.

Guest
you are right ! me too i need answers also for your questions..
that extension needs an update and add the reward ads... and also you have to make it easier to use mediation with admob... i have about 20% fillrate thats realy atupid -_- yoyo games just stop ignoring us.
Exactly! Rewarded Video Ads is the most wanted feature by all of us using this extension. I don't know why YoYo doesn't implement it yet so far.

Regarding fill rate, my Admob's fill rate is around 80%-90% (but i just use a banner, no interstitial ad at all). I don't know why is yours so low (20%, maybe you are using interstitial ad?), and it seems related to how the ad is delivered (Impressions / Requests). Here is the link to Admob Help that may describe your situation about low fill rate or Ad Mediation Report (mediation on the Admob network)
https://support.google.com/admob/answer/6147084?hl=en

However, if what you meant is the mediation between Ad networks (Admob with other ads such as UnityAds,Chartboost, etc), From the name of the extension, I think the Google Play Services extension should be about Google Play Services products only, in this case the Ads which is a built-in part of Google Play Services is on Admob network, not on other ads networks. However, if you need that multinetwork ads, I think it should be done by another extension with different name, and not this one, e.g. a separate extension like the one that is well done by another paid extension already available on the marketplace.

(Because i mention it here i also just want to say that the Admob SDK there already includes rewarded video ads lol, but i don't know how he added it, but from what i read from its description there last time, it also needs to include this official Google Play Services extension for it to work for the Admob (CMIIW). Unfortunately, i only need the Admob only without the other networks addition, which is the latest Google Play Services service "as is" from Google that works on GameMaker Studio GML environment, and there is already available this one by YoYo Games (but currently not up-to-date) for use as the monetization feature on mobile, that is why probably can explain that i and some of us choose to stick with this official extension by YoYo Games.

Unfortunately again, my basic is not a programmer so i can't "add/modify/hack/edit" by myself the "as is" latest Google Play Services SDK to the extension we are talking about to match the latest updates :(, so that's why we that have same interest on this update thing really hopes from YoYo to do the update. I think it should be done by the maker of this extension that knows it better to handle it.

Last but not least, it is the essential feature part of the Mobile Export is offering on every GMS2 Mobile permanent license we all purchased for $399, so it should be up-to-date reflecting to what mobile industry is progressing.

I'm also interested in this topic. I would like to have answers.
I can be wrong, but judging by the file GooglePlayServicesExtension.extension
there is specified com.google.android.gms: play-services-games: 9.6.1
That is, apparently, version 9.6.1 is used.
After looking at it again on the extension from the IDE "Inject to Gradle dependencies". I found "compile 'com.google.android.gms: play-services-ads:9.6.1". So yes, it is apparently version 9.6.1 is used. So, the question (1) is apparently just answered.

Related to this gradle thing, i just found another warning from Google related to how to implement this GPS ext, here's a link to how to set up Google Play Services which might also be worthed to discuss here (that results in my another question (3) below lol):
(LINK: https://developers.google.com/android/guides/setup)
Note: Don't use the combined play-services target. It brings in dozens of libraries, bloating your application.
Instead, specify only the specific Google Play services APIs your app uses.
The latest SDK version that is not yet implemented on this extension is version 11.8.0.
Table 1. Individual APIs and corresponding build.gradle descriptions.

API Description in build.gradle
Google+ com.google.android.gms: play-services-plus:11.8.0
Google Account Login com.google.android..gms: play-services-auth:11.8.0
Google Actions, Base Client Library com.google.android..gms: play-services-base:11.8.0
Google Sign In com.google.android..gms: play-services-identity:11.8.0
Google Analytics com.google.android..gms: play-services-analytics:11.8.0
Google Awareness com.google.android..gms: play-services-awareness:11.8.0
Google Cast com.google.android..gms: play-services-cast:11.8.0
Google Cloud Messaging com.google.android..gms: play-services-gcm:11.8.0
Google Drive com.google.android..gms: play-services-drive:11.8.0
Google Fit com.google.android..gms: play-services-fitness:11.8.0
Google Location and Activity Recognition com.google.android..gms: play-services-location:11.8.0
Google Maps com.google.android..gms: play-services-maps:11.8.0
Google Mobile Ads com.google.android..gms: play-services-ads:11.8.0
Google Places com.google.android..gms: play-services-places:11.8.0
Mobile Vision com.google.android..gms: play-services-vision:11.8.0
Google Nearby com.google.android..gms: play-services-nearby:11.8.0
Google Panorama Viewer com.google.android..gms: play-services-panorama:11.8.0
Google Play Game services com.google.android..gms: play-services-games:11.8.0
SafetyNet com.google.android..gms: play-services-safetynet:11.8.0
Android Pay com.google.android..gms: play-services-wallet:11.8.0
Android Wear com.google.android..gms: play-services-wearable:11.8.0
I see the current extension has 4 gradle injections:
compile 'com.google.android..gms: play-services-games:9.6.1'
compile 'com.google.android..gms: play-services-ads:9.6.1' (**this**)
compile 'com.google.android..gms: play-services-plus:9.6.1'
compile 'com.google.android..gms: play-services-gcm:9.6.1'

My additional question (3) ,so to do what Admob recommends, if i just use Admob, and not the others, i only need to insert (**this**) ? and delete others to prevent my games bloating?

(* Update, answer for my own question (3): I tested to remove the other lines besides **this**, and it will fail to compile the .apk with tons of errors! SO, don't do this everyone! it seems this extension does not accomodate just for admob only, but must along with iap, plus, gcm, google games services, etc. so we can't delete other lines there, as the extension needs all 4 of them, although you need "ads" admob only, so we must accept that little of 'bloating' unused reference.)

Anyway back to the question (1) about version number and to go to the question (2), There have been new versions released by Google above that version, multiple times this year ( https://developers.google.com/admob/android/rel-notes ). The GPS extension hasn't been updated yet to support it.

From the link we are also able to see that there were bug fixes updates on version 10.0.1 , and then jumps to the latest 11.8.0, there is also bug fixes. I don't know if this answers what crashes/errors we are getting from this outdated extension.

So the important unanswered question (2) is when will YoYo want to update again the essential Google Play Services extension with the latest Admob SDK (it seems the Google Mobile Ads for Android, not the iOS one, is also a built in as a Google Play Service package, so in this case i can say with the latest Google Play Services SDK version 11.8.0)?

Mai I ask please? I have more than 20 applications on playstore since 12/2016 I published the first one, I use the same SDK extension for all of them as I remember, is that mean I have to update them all?
From the fact i wrote above, it might answer a part of your question. If you are only afraid of the Google's 2018 warning (older than version 7.0.0), it looks like the version 9.6.1 on the extension 2.9.0 is already above that, BUT Google also said that "Please ensure that you have upgraded to the latest version of the Google Mobile Ads SDK.", AND that might not be a nice reason that you and i, and we all be lazy to implement critical updates by escaping from this matter. Please take a look at what releases have been released by Google, many of them are bug fixes. And the fact that we have been facing many crashes/errors lately related to this extension (might be related to the lack of bug fixes on it) as i wrote above.

All of my several apps are also using this extension, and i think hundreds to thousands of apps and games (developed by us here) are using this extension on market. But if it is already outdated with crashes and errors, i think we don't mind updating it as soon as possible we can, as what we do for our GMS IDE/runtime things, especially with bug fixes included, right? ;)
 
Last edited by a moderator:
K

KBeeeR

Guest
Regarding fill rate, my Admob's fill rate is around 80%-90% (but i just use a banner, no interstitial ad at all). I don't know why is yours so low (20%, maybe you are using interstitial ad?), and it seems related to how the ad is delivered (Impressions / Requests).
yes i use interstitial ads and banners on both ios and android

banner and interstitial ads on my ios apps have fill rate around 97%-100%
banner ads on android has fill rate around 70%-90%
interstitial ads on android has fill rate around 10%-30% AND as i see that the more requests the app asks the least fill rate admob gives for android interstitial ads.

the ads on ios by admob has good fill rate maybe because the most of apps are paid and have no ads inside :D so admob has always an ad to show there.. Unlike in google play adnroid (free apps full of admob ads).

so as you can see i only need mediation between Ad networks on interstitial android ads and i don't know where and how can i do that -_- it was so difficult to do and it didn't work with me.. (and im an old user since 10 years since gamemaker 7.0)
i didn't want to mess with admob and lose my account with doing something wrong.

it is the essential feature part of the Mobile Export is offering on every GMS2 Mobile permanent license we all purchased for $399, so it should be up-to-date reflecting to what mobile industry is progressing.
thats 100% right ! i didnt buy GMS2 for $399 to get an old extension to get my ads stop working or have any problem with admob.

i have a question :D
do you think that admob gives better fill rate for the apps that have an up to date Google Mobile Ads SDK versions ? :D
or maybe the closer to the latest version the app has the most ads admob gives ? :p funny questions.
 
H

HW.

Guest
i have a question :D
do you think that admob gives better fill rate for the apps that have an up to date Google Mobile Ads SDK versions ? :D
or maybe the closer to the latest version the app has the most ads admob gives ? :p funny questions.
I think in this case where our extension using last year version 9.6.1 and there are bug fixes after that (twice this year), the latest version should bring better general improvements for the ads to show and prevent the bugs to occur.

Let's say regarding fill rate, if admob sdk requests the ad, but before it has a chance to display any impression (the game crashes), the fill rate (requests/impressions) is then affected too, isn't it? So the latest version we have is better i think. In the end it will improve our revenue too, if it doesn't decrease the chance of our ads to show properly at anytime it is requested.

While various errors are occuring on this extension now, with more upcoming new devices and new version of OS update released on the market time after time, these crashes are killing my games slowly.

I work hard to get people to install and play my games, but in one event of crash, BOOM! the player gets angry, then uninstall and not forget to also give 1star rating on my Play Store page, bad luck back to back eh? Very frustrating! :bash:

I have a question, have you got any errors/crashes related to this extension lately besides fill rate problem?
 
Last edited by a moderator:
K

KBeeeR

Guest
I have a question, have you got any errors/crashes related to this extension lately besides fill rate problem?
Of course man !! everyday i get a lot of crash reports !! for example these five crash reports came only in the past hour for one of my games on google play !!!
Itel S31 (S31), 1024MB RAM, Android 6.0
java.lang.NullPointerException:
at com.mycompany.mygame.GooglePlayServicesExtension$8.run (GooglePlayServicesExtension.java:1181)
at android.os.Handler.handleCallback (Handler.java:815)
at android.os.Handler.dispatchMessage (Handler.java:104)
at android.os.Looper.loop (Looper.java:207)
at android.app.ActivityThread.main (ActivityThread.java:5751)
at java.lang.reflect.Method.invoke (Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:789)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:679)

Samsung Galaxy S4 (jflte), 2048MB RAM, Android 5.0
java.lang.NullPointerException:
at com.mycompany.mygame.GooglePlayServicesExtension$8.run (GooglePlayServicesExtension.java:1181)
at android.os.Handler.handleCallback (Handler.java:739)
at android.os.Handler.dispatchMessage (Handler.java:95)
at android.os.Looper.loop (Looper.java:145)
at android.app.ActivityThread.main (ActivityThread.java:5951)
at java.lang.reflect.Method.invoke (Native Method)
at java.lang.reflect.Method.invoke (Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1400)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1195)


Samsung Galaxy Grand Neo (baffinlite), 1024MB RAM, Android 4.2
java.lang.NullPointerException:
at com.mycompany.mygame.GooglePlayServicesExtension$8.run (GooglePlayServicesExtension.java:1181)
at android.os.Handler.handleCallback (Handler.java:725)
at android.os.Handler.dispatchMessage (Handler.java:92)
at android.os.Looper.loop (Looper.java:176)
at android.app.ActivityThread.main (ActivityThread.java:5319)
at java.lang.reflect.Method.invokeNative (Native Method)
at java.lang.reflect.Method.invoke (Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1102)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:869)
at dalvik.system.NativeStart.main (Native Method)

Samsung Galaxy J5 Prime (on5xelte), 2048MB RAM, Android 6.0
java.lang.NullPointerException:
at com.mycompany.mygame.GooglePlayServicesExtension$7.run (GooglePlayServicesExtension.java:1135)
at android.os.Handler.handleCallback (Handler.java:739)
at android.os.Handler.dispatchMessage (Handler.java:95)
at android.os.Looper.loop (Looper.java:148)
at android.app.ActivityThread.main (ActivityThread.java:7409)
at java.lang.reflect.Method.invoke (Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1120)

Samsung Galaxy Ace4 (vivalto5mve3g), 512MB RAM, Android 4.4
java.lang.NullPointerException:
at com.mycompany.mygame.GooglePlayServicesExtension$7.run (GooglePlayServicesExtension.java:1135)
at android.os.Handler.handleCallback (Handler.java:733)
at android.os.Handler.dispatchMessage (Handler.java:95)
at android.os.Looper.loop (Looper.java:136)
at android.app.ActivityThread.main (ActivityThread.java:5584)
at java.lang.reflect.Method.invokeNative (Native Method)
at java.lang.reflect.Method.invoke (Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1268)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1084)
at dalvik.system.NativeStart.main (Native Method)
This is realy bad.. and as you said "these crashes are killing the game" users uninstall the game and give 1 star rate and i get poor fill rate and lose alot of money !!!!!! and yoyogames just igroning us.. that make me feel that i'm wasting my time doing my best to make better games.
 

zbox

Member
GMC Elder
Have had a few people ask me to implement the reward and native ads - would be quite a cool feature to have in standard GMs :)
 
H

HW.

Guest
Recent news related to Google Play Update lately.
LINK: https://android-developers.googleblog.com/2017/12/improving-app-security-and-performance.html

I think it is also worthed to be discussed here, related to this Google Play Services Update thing.

Google Play powers billions of app installs and updates annually. We relentlessly focus on security and performance to ensure everyone has a positive experience discovering and installing apps and games they love. Today we're giving Android developers a heads-up about three changes designed to support these goals, as well as explaining the reasons for each change, and how they will help make Android devices even more secure and performant for the long term.

  • In the second half of 2018, Play will require that new apps and app updates target a recent Android API level. This will be required for new apps in August 2018, and for updates to existing apps in November 2018. This is to ensure apps are built on the latest APIs optimized for security and performance.
  • In August 2019, Play will require that new apps and app updates with native libraries provide 64-bit versions in addition to their 32-bit versions.
  • Additionally, in early 2018, Play will start adding a small amount of security metadata on top of each APK to further verify app authenticity. You do not need to take any action for this change.

In 2018+, Google will require us, Android games developers to be more attentive to use "up-to-date" APIs/SDKs on our Android games to be kept displayed on Google Play store.


In order to provide users with the best Android experience possible, the Google Play Console will require that apps target a recent API level:

  • August 2018: New apps required to target API level 26 (Android 8.0) or higher.
  • November 2018: Updates to existing apps required to target API level 26 or higher.
  • 2019 onwards: Each year the targetSdkVersion requirement will advance. Within one year following each Android dessert release, new apps and app updates will need to target the corresponding API level or higher.
I hope YoYo team is aware of the latest Android updates such as i quoted above so that the mobile export product we are using is always up-to-date and in sync with mobile industry.

:D Yeah, they are already doing well with Android SDK and NDK updates Thank you! e.g. https://help.yoyogames.com/hc/en-us/articles/227860547-GMS2-Required-SDKs
Android NDK 16 is not currently supported - this will be supported as of 2.1.4.
They want to update to NDK 16 in the upcoming GMS2 version 2.1.4. That is great news for us mobile export owners! Keep it up! ;)

:( BUT, In addition to SDK, NDK updates, I think we as users will be very glad if YoYo team also wants to take care of this Google Play Services extension, to be always up-to-date!! o_O

For everyone using this extension that has crashes and errors @KBeeeR , and me and others , let's submit our errors to them (again and again everytime there are new errors), so that they are aware it has errors and will deliver updates and fixes here:

https://account.yoyogames.com/report-bug
https://help.yoyogames.com/hc/en-us/requests/new

I don't know how they regard the priority (low - high) of any reports to them, but I think we all agree that up-to-date Google Play Services extension is the same important as SDK / NDK updates for an Android game to work properly.

Dear YYG staff, @Mike @rwkay @rmanthorp @Dan @Jobo @Yazuka @forsamori @Claire @Lee Chisholm

First of all I'd like to say Happy Holidays to all of you! :)

Hi YoYo team, could you please update "the outdated end of year 2016" Google Play Services SDK version 9.6.1 to the latest "end of year 2017 release" version 11.8.0? We hope many bug fixes on it will fix our crashes and errors on the extension.

Could you please give us the rough ETA just like what u did e.g. a clear info about NDK 16 support coming to GMS 2.1.4. At least we know you are already aware of this situation and we wait for the update for the Google Play Services extension in peace.
 
Last edited by a moderator:
Guys i have a question, to update the Google Play SDK to the latest version 11.8.0 is not just enough to add this?

compile 'com.google.android.gms:play-services:11.+'

In the extension part where is the gradle injection ?

Because i did it and in the compiler log seem that the correct new library has been added, is it enough?


:com.sravenstudios.Slot7:prepareComGoogleAndroidGmsPlayServices1104Library UP-TO-DATE
:com.sravenstudios.Slot7:prepareComGoogleAndroidGmsPlayServicesAds1104Library UP-TO-DATE
:com.sravenstudios.Slot7:prepareComGoogleAndroidGmsPlayServicesAdsLite1104Library UP-TO-DATE
 
H

HW.

Guest
Guys i have a question, to update the Google Play SDK to the latest version 11.8.0 is not just enough to add this?

compile 'com.google.android.gms:play-services:11.+'

In the extension part where is the gradle injection ?

Because i did it and in the compiler log seem that the correct new library has been added, is it enough?


:com.sravenstudios.Slot7:prepareComGoogleAndroidGmsPlayServices1104Library UP-TO-DATE
:com.sravenstudios.Slot7:prepareComGoogleAndroidGmsPlayServicesAds1104Library UP-TO-DATE
:com.sravenstudios.Slot7:prepareComGoogleAndroidGmsPlayServicesAdsLite1104Library UP-TO-DATE
What you did only updating the library (to 11.x 0.4?), but the codes on the extension are still written targeting old version 9.6.1 in mind.

No new features are implemented from the library by the extension, and the important thing it might give you additional errors or instability on users devices (i mean not only when u compile if happens, but when the game is run by you or your players on various Android devices).

I don't think it will work properly for all functionalities because if there are any changes/deprecated functions on the new version, it is unsupported by the extension itself that is not updated yet to implement all the updates of the library.

So be careful just grabbing the latest stuff when the extension itself isn't updated either.

While we keep waiting in silence from YoYo team.....

I wish there is someone expert on Java/SDK that might help us here on the community (that don't understand it how to update all of this) with an Open Source alternative version of Google Play Services extension using latest sdks perhaps? I wish there is.

Still, in the meantime we keep expecting the extension update come from YoYo team...
 
H

HW.

Guest
Yesterday, 5:39 PM on app version 1000003
LGE LG Leon 4G LTE (c50n), 1024MB RAM, Android 5.0

java.lang.NullPointerException:
at com.devname.gamename.GooglePlayServicesExtension$8.run (GooglePlayServicesExtension.java:1181)
at android.os.Handler.handleCallback (Handler.java:739)
at android.os.Handler.dispatchMessage (Handler.java:95)
at android.os.Looper.loop (Looper.java:135)
at android.app.ActivityThread.main (ActivityThread.java:5297)
at java.lang.reflect.Method.invoke (Native Method)
at java.lang.reflect.Method.invoke (Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:908)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:703)

Jan 11, 11:40 PM on app version 1000003
Samsung Galaxy J5(2016) (j5xnlte), 2048MB RAM, Android 6.0

java.lang.NullPointerException:
at com.devname.gamename.GooglePlayServicesExtension$8.run (GooglePlayServicesExtension.java:1176)
at android.os.Handler.handleCallback (Handler.java:739)
at android.os.Handler.dispatchMessage (Handler.java:95)
at android.os.Looper.loop (Looper.java:158)
at android.app.ActivityThread.main (ActivityThread.java:7231)
at java.lang.reflect.Method.invoke (Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1120)

Jan 9, 10:05 PM on app version 1000004
Samsung Galaxy J7 Prime (on7xelte), 3072MB RAM, Android 7.0

java.lang.NullPointerException:
at com.devname.gamename.GooglePlayServicesExtension$8.run (GooglePlayServicesExtension.java:1176)
at android.os.Handler.handleCallback (Handler.java:751)
at android.os.Handler.dispatchMessage (Handler.java:95)
at android.os.Looper.loop (Looper.java:154)
at android.app.ActivityThread.main (ActivityThread.java:6776)
at java.lang.reflect.Method.invoke (Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1518)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1408)

Jan 7, 10:49 PM on app version 1000003
Samsung Galaxy Tab A 7.0 (gtexswifi), 1536MB RAM, Android 5.1

java.lang.NullPointerException:
at com.devname.gamename.GooglePlayServicesExtension$8.run (GooglePlayServicesExtension.java:1181)
at android.os.Handler.handleCallback (Handler.java:739)
at android.os.Handler.dispatchMessage (Handler.java:95)
at android.os.Looper.loop (Looper.java:145)
at android.app.ActivityThread.main (ActivityThread.java:6939)
at java.lang.reflect.Method.invoke (Native Method)
at java.lang.reflect.Method.invoke (Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1404)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1199)

Jan 6, 9:54 PM on app version 1000003
Sharp AQUOS R (SG605SH), 4096MB RAM, Android 7.1

java.lang.NullPointerException:
at com.devname.gamename.GooglePlayServicesExtension$8.run (GooglePlayServicesExtension.java:1176)
at android.os.Handler.handleCallback (Handler.java:751)
at android.os.Handler.dispatchMessage (Handler.java:95)
at android.os.Looper.loop (Looper.java:154)
at android.app.ActivityThread.main (ActivityThread.java:6247)
at java.lang.reflect.Method.invoke (Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:892)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:782)

Jan 3, 9:11 PM on app version 1000003
Xiaomi Mi 4i (ferrari), 2048MB RAM, Android 5.0

java.lang.NullPointerException:
at com.devname.gamename.GooglePlayServicesExtension$8.run (GooglePlayServicesExtension.java:1181)
at android.os.Handler.handleCallback (Handler.java:739)
at android.os.Handler.dispatchMessage (Handler.java:95)
at android.os.Looper.loop (Looper.java:135)
at android.app.ActivityThread.main (ActivityThread.java:5247)
at java.lang.reflect.Method.invoke (Native Method)
at java.lang.reflect.Method.invoke (Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:912)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:707)

Dec 30, 2017, 10:55 AM on app version 1000003
Huawei Nexus 6P (angler), 3072MB RAM, Android 7.1

java.lang.NullPointerException:
at com.devname.gamename.GooglePlayServicesExtension$8.run (GooglePlayServicesExtension.java:1181)
at android.os.Handler.handleCallback (Handler.java:751)
at android.os.Handler.dispatchMessage (Handler.java:95)
at android.os.Looper.loop (Looper.java:154)
at android.app.ActivityThread.main (ActivityThread.java:6121)
at java.lang.reflect.Method.invoke (Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:889)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:779)


Dec 30, 2017, 4:46 AM on app version 1000003
ZTE Z833 (camellia), 1024MB RAM, Android 6.0

java.lang.NullPointerException:
at com.devname.gamename.GooglePlayServicesExtension$8.run (GooglePlayServicesExtension.java:1181)
at android.os.Handler.handleCallback (Handler.java:745)
at android.os.Handler.dispatchMessage (Handler.java:95)
at android.os.Looper.loop (Looper.java:148)
at android.app.ActivityThread.main (ActivityThread.java:5417)
at java.lang.reflect.Method.invoke (Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:616)

Dec 11, 2017, 5:13 PM on app version 1000004
Samsung Galaxy J7 Max (j7maxlte), 4096MB RAM, Android 7.0

java.lang.NullPointerException:
at com.devname.gamename.GooglePlayServicesExtension$7.run (GooglePlayServicesExtension.java:1135)
at android.os.Handler.handleCallback (Handler.java:751)
at android.os.Handler.dispatchMessage (Handler.java:95)
at android.os.Looper.loop (Looper.java:154)
at android.app.ActivityThread.main (ActivityThread.java:6776)
at java.lang.reflect.Method.invoke (Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1496)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1386)
Crashes on multiple popular brands of devices, similar symptoms of errors of the Java codes on the extension.

Any Java programmers can tell us what's going on here and how to fix it?
 

Andrey

Member
Crashes on multiple popular brands of devices, similar symptoms of errors of the Java codes on the extension.
Any Java programmers can tell us what's going on here and how to fix it?
I'm not sure that they read this topic on the forum.
I think it's worth writing in Report a Bug, so they fix the errors.
 
  • Like
Reactions: HW.
H

HW.

Guest
I'm not sure that they read this topic on the forum.
I think it's worth writing in Report a Bug, so they fix the errors.
I already did report to them today before posting it :) I also posted again here in case anyone else on GM community that has knowledge on Java might want to help us.
 

Appsurd

Member
Rewarded Video Ads from Admob would be great as well. But we haven't heard about them for a while, are they perhaps on holiday?
 
H

HW.

Guest
Rewarded Video Ads from Admob would be great as well. But we haven't heard about them for a while, are they perhaps on holiday?
@Nocturne Can you speak to yoyo about this? I'd like some staff reassurance
I think you can contact them via:

https://account.yoyogames.com/report-bug
https://help.yoyogames.com/hc/en-us/requests/new

I contacted them via those links last month. The auto reply system gave me a ticket number since 13 January, but no reply nor follow-ups so far.

However, it doesn't mean you don't have to contact them either. Please contact them too if you really need it. I hope they want to take notice of this matter (if there are enough people perhaps?).

While we keep waiting in silence from YoYo team.....

I wish there is someone expert on Java/SDK that might help us here on the community (that don't understand it how to update all of this) with an Open Source alternative version of Google Play Services extension using latest sdks perhaps? I wish there is.

Still, in the meantime we keep expecting the extension update come from YoYo team...
Quoting my own words :p, hmm let's try to tag some active extension publishers on marketplace recently spotted on this forum:

Let's try to tag ;) : @Nocturne @Ghost in the IDE @zbox @Samuel Venable @Mastergidan and others that is reading this thread ....

Is there any chance that someone is interested in releasing this one? (not an exclusive order for your service ofc, but we need an alternative extension for anyone to download / buy from marketplace*).
*If it is not free as YoYo's, maybe an affordable one? will make tons of users happy and some traffic boosts to your other asset offerings? :D

In case there is someone interested..... please keep reading below:
Note: Don't use the combined play-services target. It brings in dozens of libraries, bloating your application.
Instead, specify only the specific Google Play services APIs your app uses.
Oh, and in case there is someone interested making it and want to make us here happy, but then think this after little research on mp: "oh, other similar extensions already there, i don't want" (yes there is one but with bug (sorry to say) or no bug but with bloating sdks included, or a relatively pricey one for some users) is the reason for someone not want to release it then, please consider this new offering: an "Admob-specific-only extension with up to date 11.8.0, and without bloating-unused-SDKs other than admob, as described on my question number 3 and above quote" can be an attractive differentiation! :cool:

@other-mp-publishers-that-might-not-have-a-clue-yet-regarding-what-asset-that-is-really-wanted-by-users-to-release-again-to-your-mp-portfolio:
Yes, there is here, with research details already! lol, This is another "wanted" extension wish, on a thread with about 1K forum views so far (not counting the pageviews on the marketplace page too of course :)).

EDIT: added an highlight green color beside :D emoji.
 
Last edited by a moderator:
S

Sam (Deleted User)

Guest
First of all I am very flattered you tagged me for the reasons given.

While I'd love to help and am technically able to write Android extensions, I can't test them with GMS 2, only 1.4 because I don't have the Mobile Edition of GMS 2. That aside, I *hate* Java. I have never been able to write a successful Java extenson for Android other than a video player that only played the video's associated audio track. lol. That's about it in my experience with Android extension writing, sorry dude. C++, VB5, VB6, VBScript, JScript are my preferred languages as of late. Though I've probably had the most experience in C++, which is great because it's not a Windows-only standard.

[rant over]
 
  • Like
Reactions: HW.
H

HW.

Guest
First of all I am very flattered you tagged me for the reasons given.

While I'd love to help and am technically able to write Android extensions, I can't test them with GMS 2, only 1.4 because I don't have the Mobile Edition of GMS 2. That aside, I *hate* Java. I have never been able to write a successful Java extenson for Android other than a video player that only played the video's associated audio track. lol. That's about it in my experience with Android extension writing, sorry dude. C++, VB5, VB6, VBScript, JScript are my preferred languages as of late. Though I've probably had the most experience in C++, which is great because it's not a Windows-only standard.

[rant over]
Thank you for your reply! It's okay, i understand your situation. Keep it up on what you are working on! ;)
 
L

Lonewolff

Guest
Also honoured to be tagged as well :)

I started looking to making an extension for this as the YYG one is not particularly healthy as we have found.

Java isn't my strong suit to be honest though (never used it). So, it may take a little while. I did get as far as making a basic boilerplate Java extension talk to GM, so I am off to a good start anyway.

C++ is my strong point also. But I am reluctant to do that in this as there would be all sorts of shenanigans with the different architectures (MIP's, x86, x64, ARM, etc...)
 
H

HW.

Guest
I have the feeling that while this position will not close, the extension will not be updated. :(
Hmm it could be. If that's the reason, let's keep our fingers crossed that our hero will come soon. We hope the best from Playtech's YoYo Games. :)
 
Last edited by a moderator:
Exactly! Rewarded Video Ads is the most wanted feature by all of us using this extension. I don't know why YoYo doesn't implement it yet so far.
Because Yoyogames makes money on marketplace purchases vs offering it for free. They could cut out the middle man and have their own paid extension. Better to net $20 for their own rather than 30% of the marketplace fee for someone else's.

Different engines are getting more alluring as time goes on. I just see all the cool things other engines are doing and I want them too.

That's just the cynical, devil's advocate reason. Perhaps the tone will inspire someone to prove me wrong that * someone at Yoyo / Playtech * can do it for free.
 
Last edited:

rIKmAN

Member
This extension does multiple ad networks, multiple ad types (inlcuding rewarded video ads) and all 30+ reviews are a glowing 5* with great feedback.
It's isn't free, but if you are worried you won't make back the $30 it costs via ad revenue then I would think that not having rewarded video ads should be the least of your worries anyway.

In saying that - I do agree that YYG should be keeping their own official assets for this sort of thing up to date, but this area / feature isn't the only one that is broken / out of date and in need of some TLC so I wouldn't expect it to change anytime soon.

At least there are options in this case.
 
  • Like
Reactions: HW.
H

HW.

Guest
Different engines are getting more alluring as time goes on. I just see all the cool things other engines are doing and I want them too.

That's just the cynical, devil's advocate reason. Perhaps the tone will inspire someone to prove me wrong that they can do it for free
YoYo did it already for free.*
(*from the price list of their free extensions on mp, apparently covered by the price of modules we already paid so they can keep doing it, not to mention the possibility of looking at what their competitors do for the monetization feature for the engine to make it competitive too for prospective customers).

As we know the Admob is a built-in part of Google Play Services, that's why we think this is just a basic monetization feature to have for a mobile module (Android/iOS) we paid already. Admob is also still the largest ad network for game publisher to consider for monetization plan with about 60% of mobile ads market industry compared to other networks e.g. Unity Ads about 6% marketshare, and others are from 0.0x % to 1+% for each ad network*. (*Source: https://www.appbrain.com/stats/libraries/ad)

I know they do understand already the situation of their assets on YoYo marketplace, from the job position description i can see that Playtech's YoYo Games are already aware of the need to make their product in this case GameMaker Studio 2 IDE+Runner, +specifically the $399 mobile module, performance boosted by the essential functionalites on the basic extensions, to be up-to-date reflecting to what mobile industry is progressing.

It's isn't free, but if you are worried you won't make back the $30 it costs via ad revenue then Iwould think that not having rewarded video ads should be the least of your worries anyway.
The worry is not on the new feature (rewarded video ads) not to be implemented soon. But, more of the need of bug fixes included on the latest SDKs for the crashes on game players devices for simply banner ads as described from our previous posts above related to the Java codes written on the extension.

Regarding the specific admob rewarded video ads, in the meantime, i can still use this free version of rewarded video ads extension by Hanul (older sdk compared to the paid one but fully working without crashes, the rewarded video ads is on Unity Ads by the way, not the Admob i prefer for the future for the video rewarded ads).

Regarding the admob SDK in general as a part of the official Google Play Services extension, not just the most wanted new feature one, the crashes on the basic banner ads, which is related to the obsolete SDK/the lack of bug fixes on the Ads of Google Play Services extension is the primary case.

There are many other essential official extensions made by YoYo, in addition to the monetization feature like this Admob or IAP things, there are also extensions for Analytics, Game Sharing, or Social Networks like Facebook, etc... on the marketplace for us, paid users of the GMS/GMS2 licenses to use. They started it excellent and i think what has to do is just like what rIKmAN said,
In saying that - I do agree that YYG should be keeping their own official assets for this sort of thing up to date, but this area / feature isn't the only one that is broken / out of date and in need of some TLCso I wouldn't expect it to change anytime soon.
(EDIT: I agree a part of rIKmAN words, but not the full sentence, especially after TLC one. Personally, I would expect it to change anytime soon ;) and i hope this job position is filled soon too.)
 
Last edited by a moderator:
Top