Quick Links: Download Gideros Studio | Gideros Documentation | Gideros Development Center | Gideros community chat | DONATE
Google API's being shutdown — Gideros Forum

Google API's being shutdown

antixantix Member
edited February 2019 in Bugs and issues
Maybe others here have received multiple email notifications from Google regarding several of their API's that are being shutdown in early March this year.

This issue affects 3 of my games. All three games are unable to connect to Google Play Services (using the gaming plugin) without the Google Drive API being enabled. Sadly this is one of the API's that Google are shutting down. This of course will result in making my games no longer function :(

After a discussion on slack some time ago with @hgy29, he suggested that there was something in the gaming plugin that needs to be modified so that Google Play Services can be connected to without requiring Drive APi.

I would like to know if there will be a new release including the fix for this before the shutdown date of March 27 2019 :)
+1 -1 (+3 / -0 )Share on Facebook

Comments

  • Apollo14Apollo14 Member
    edited February 2019
    I don't remember if in-app purchases require user to sign-in via GooglePlay? (if not, what we gain from GooglePlay auth? There is no useful data except user's nickname)
    > Newcomers roadmap: from where to start learning Gideros
    "What one programmer can do in one month, two programmers can do in two months." - Fred Brooks
    “The more you do coding stuff, the better you get at it.” - Aristotle (322 BC)
  • I'm pretty sure IAP doesn't need play services but if you want leaderboards and achievements.. you need play services unfortunately. Someone with more knowledge should be able to clarify however :)
  • Apollo14Apollo14 Member
    edited February 2019
    imo google's leaderboards and achievements look like crap, they're rarely used in popular games (though leaderboards are nice, cause we don't need to worry about backend)

    (I agree that it would be great if googledrive dependency is fixed)
    > Newcomers roadmap: from where to start learning Gideros
    "What one programmer can do in one month, two programmers can do in two months." - Fred Brooks
    “The more you do coding stuff, the better you get at it.” - Aristotle (322 BC)
  • I don't think they look that terrible man :)

    I guess there are other places offering the facility to have leaderboards and achievements? I dunno. Using googles seems quite easy.

    I think that this issue is resolved quickly because a bunch of my games (and other peoples games I guess) won't function until it is resolved and in theory all future games will also not work and that's not very good is it?
  • I agree that it would be great if googledrive dependency is fixed
    > Newcomers roadmap: from where to start learning Gideros
    "What one programmer can do in one month, two programmers can do in two months." - Fred Brooks
    “The more you do coding stuff, the better you get at it.” - Aristotle (322 BC)
  • hgy29hgy29 Maintainer
    Just to be clear, removing google drive dependency means removing gaming plugin functionality, it is impossible to fix while keeping full functionality. At first sight this means dropping support for saving gaming data.

    Likes: SinisterSoft

    +1 -1 (+1 / -0 )Share on Facebook
  • @hgy29 Okay the official word is...
    December 6, 2019 The Drive Android API is shut down and all connection attempts will be refused. Clients must migrate by this date.
    I don;t use any save/load stuff, does anyone else? Regardless.. if those features depend on drive then they will also cease to function in December. Wouldn;t it be better to just get this stuff done now? I mean if I release another 5 or so games between now and then.. I'll have to update all of them!
    On March 7, 2019, all Google+ APIs and Google+ Sign-in will be shut down completely
    Somehow some of my games are using those API's.. don;t ask me how.. I just export to APK and then upload them to the play store. Those need to be removed quickly if they are somewhere in the gaming plugin.
  • hgy29hgy29 Maintainer
    antix said:

    Wouldn;t it be better to just get this stuff done now?

    Totally agreed, anyone wants to have a go at it ? I don't use googleplay services myself, so it is difficult for me to test if I do changes.

  • antixantix Member
    edited February 2019
    If I had any idea how anything worked under the hood in Gideros I would have a go, but there's no documentation on how to make modifications to existing plugins :(

    I'm assuming Id use the files in "C:\Gideros\All Plugins\gaming" and compile one of those android sources to somehow create the libgaming.so file?
  • hgy29hgy29 Maintainer
    Actually you don't need to understand gideros internals for this, only a single java file needs to be changed: https://github.com/gideros/gideros/blob/master/plugins/gaming/source/Android/src/com/giderosmobile/android/plugins/gaming/frameworks/GameGoogleplay.java

    This files is added to your android project on export, so you can even edit it right from android studio, then share it here once you are happy with the changes.
    Function names in it are rather self explanatory.
  • Okay what if I'm just exporting directly to APK from Gideros Studio? That won't work? I try to avoid Android Studio like the plague, I really don't have any fond memories of using it.
  • hgy29hgy29 Maintainer
    Yes that would work of course, the file can be found in all plugins/gaming/binaries folder. But exporting to android studio project and editing from there allows for faster tests and you gain Java syntax checking
  • Well I exported my project and imported it into Android Studio and immediately it had all sorts of errors and just fails to compile. I'll give it one more try once I format my system today.

    So if I decide to go with the direct export method I edit the GameGoogleplay.java file in the bin folder right?
  • hgy29hgy29 Maintainer
    Yes, the file in C:\Program Files (x86)\Gideros\All Plugins\gaming\bin\Android\src\com\giderosmobile\android\plugins\gaming\frameworks. Then you re-export your project with your changes. Thinking of it, you may have to remove google drive api from your google api console.
  • antixantix Member
    edited February 2019
    Yep I remember that I will need to disable that.

    I've got the thing compiling in Android Studio after spending most of a day f**king about with it. Really.. this kind of thing is best done by somebody who knows what they are doing. It would take somebody with actual knowledge maybe an hour to fix but I've wasted so much time already and still haven't begun testing :(
  • antix said:

    Yep I remember that I will need to disable that.

    I've got the thing compiling in Android Studio after spending most of a day f**king about with it. Really.. this kind of thing is best done by somebody who knows what they are doing. It would take somebody with actual knowledge maybe an hour to fix but I've wasted so much time already and still haven't begun testing :(

    Look to the brighter side, it is really a good experience. Really hard to learn those kind of things without experiencing it alone. Stay strong,focused and success will come.
    Don't forget to share your experience with us at the end, every kind of information shared from person's own experiences will be appreciated by all users i am sure of it.
  • hgy29hgy29 Maintainer
    Took a look at the code, and I think commenting out line 70 (.requestScopes(Drive.SCOPE_APPFOLDER)) may be enough. Google docs are unclear about this however.

    Likes: Apollo14

    +1 -1 (+1 / -0 )Share on Facebook
  • @talis, mate.. I don't need this type of experience heheh. I'm a user which to me implies who just wants to use Gideros, not update it. Thus far my experience has been one of utmost frustration and annoyance I'm afraid.

    @hgy29 I commented out that line and the line 14 with the import. I then removed the dependency for plus (I can't even remember where I stumbled across that). So far it seems to work. I disabled both APIs in the google play center API web app and the game loads and connects to play services and leaderboards and achievements are functioning so fingers crossed.

    I'll have to repeat this arduous process for another four games and then it's done. However, until these changes are made to the core of Gideros I guess I won't be able to use the direct export to APK from inside Gideros Studio, which I feel has been one of the best things added to it ever! This kind of feature is what (I feel) users want.. they don't want to piss about with Android Studio.. they want to create their games and export with a couple of simple clicks :)

    Likes: Apollo14

    +1 -1 (+1 / -0 )Share on Facebook
  • hgy29hgy29 Maintainer
    Accepted Answer
    Ok, if that works then I’ll change it for next release

    Likes: pie, antix, Apollo14, talis

    +1 -1 (+4 / -0 )Share on Facebook
  • @hgy29 sounds great! I actually removed dependencies for both drive and plus in Android Studio.. found the menu again.. "Build > Edit Libraries and Dependencies"

    I'm pretty sure removing those and modifying those two lines in t"GameGooglePlay.java" have resolved the issue.

    I'm now working on another game also.

    As an asiude it was a good chance to change a few things in Exetor. I've added a zoom feature so you can now see more of what's going on around you when you are moving quickly. I also tweaked some enemies so the game is a bit harder now too :)

    https://play.google.com/store/apps/details?id=com.antix.exetor
  • Apollo14Apollo14 Member
    edited February 2019
    Thus far my experience has been one of utmost frustration and annoyance I'm afraid
    Imo currently there're no hustle-free game engines. Game development as such is pretty tough compared to many other IT specialties.
    Last 1.5 months I was working with UE4 during free time, there're hell lot of complicated challenges and it seems like there's no end. Other U-engine most likely is not easier (their ex-evangelist once told that they have enormous iceberg of buggy legacy code they're afraid of even touching, cause whole devteam changed many times; While in UE4 there're lots of stuff included, Unity's clients have to heavily rely on assetstore solutions, that frequently are 'duct tape', or broken, or incompatible with current engine version, etc.).

    Other smaller engines... you know about other smaller engines...

    (sorry for offtopic, I don't intend to argue, just personal obsevations, I don't claim they're 100% true)
    p. s. I really love that quote and trying to stick to it when I'm thinking about engine limitations:
    "How did John Carmack create Doom? Did he just give up and blame the lack of something, when he needed to write every piece for himself?
    What I am trying to say is when did developers lose the lack of inventiveness? There haven’t always been libraries to handle functions and editors to drag and drop."

    p.p.s. Btw that's awesome that google drive dependency is fixed! Thanks a lot @antix !!
    > Newcomers roadmap: from where to start learning Gideros
    "What one programmer can do in one month, two programmers can do in two months." - Fred Brooks
    “The more you do coding stuff, the better you get at it.” - Aristotle (322 BC)
  • I can't speak about Unreal Engine yet, I'll probably start getting into that later in the year. If it's anything like older versions that I've used in the past it should be a breeze :)

    IMHO Unity has always been a pile of junk, I've messed about with it a few times during its lifetime and I feel that it never really got any better :(

    I can't agree with the whole Carmack angle either.. he is an engine programmer, I'm not ;)

    Anyway, crisis averted for now so time to soldier on.

    Likes: Apollo14

    +1 -1 (+1 / -0 )Share on Facebook
  • talistalis Guru
    edited February 2019
    antix said:

    @talis, mate.. I don't need this type of experience heheh. I'm a user which to me implies who just wants to use Gideros, not update it. Thus far my experience has been one of utmost frustration and annoyance I'm afraid.

    It is your choice to stay as a user. Even i don't agree with your thoughts, i respect it and i am happy that the problem solved.
  • hgy29hgy29 Maintainer
    antix said:


    I can't agree with the whole Carmack angle either.. he is an engine programmer, I'm not ;)

    Actually no matter at which level you are operating, you always face the same challenges when programming, having to cope with whatever the below you are building upon can and can't do. When writing a game, there is always that moment when you stumble on something that the engine can't do and you have to work around. If you were the engine developer, you would face the same problem with the OS. As an OS writer I can tell you that you feel the same when the hardware you are targetting don't support some feature (like the lack of a proper MMU). And as a guy who have designed IC cores, even a that level you blame the hardware not allowing you to chain ten levels of logic operations in a single clock period.

    In the end you are always in a stronger position if you can deal with more levels, but yeah, it requires a lot of knowledge and experience.

    Likes: Apollo14, talis

    +1 -1 (+2 / -0 )Share on Facebook
  • I feel the context here is totally different but meh, as I said.. it works for now.
Sign In or Register to comment.