I am about to integrate my Android game with GP Game Services, and was wondering if there are any tools for separating data generated during testing from actual players' data. For example, I do not want my achievements/leaderboard scores that belong to my testing accounts to show up at all in production.
What is the usual approach here, what kind of tools do I have? I did not anything useful so far, which suggests I have to live with the problem. Alternatively I could create another game (for testing) on the Play console, use that for testing, while the production APK would use the 'normal' game... any suggestions?
You can use the Play Games Services Managment Tools to do that.
The following is possible using this tool (as specified on the linked site):
Reset, show, hide, and unlock Achievements
Perform administration on Leaderboards such as hiding players
Test and administrate Events and Quests
Inspect Snapshot data
Related
I am developing a small word game as a side project and chose Flutter to release the game for both Android and iOS. I am able to use flutter packages (e.g. https://pub.dev/packages/games_services) to integrate with Google Play Games and Apple Game Kit but I think this doesn't allow e.g. to create a cross platform leaderboard, but iOS and Android players see their separate scores.
Options I found:
Use Google Play Service, also for Apple users (seems to have some issues though and not work for iOS users seamlessly)
I have looked at quite some smaller games that are using their own leaderboard implementations and have seen some small projects that implement one with Flutter and Firebase (e.g. https://github.com/fateh491989/leaderboard).
I also found 2 other leaderboard services (https://github.com/omgwtfgames/omgleaderboards and https://leaderboards.io), not sure what the advantage is of those vs using firebase.
Before I go down the route of creating a simple scoring / leader board using fire base, I was hoping to find someone here who looked into this as well. Is there a way to use the Google and Apple services, yet see stats x-platforms? I would prefer this, also hoping to give users a more integrated experience and maybe also gaining new users through this.
Thanks for any pointers.
I have a app created in xamarin forms, I already know how to create the APK, the app is to be used internally, i dont want to publish to the appstore, how can the app be update when is available a new version ?
Depending on your resources at hand and requirements, you have a couple of options. These options include, but are certainly not limited to:
Visual Studio Mobile Center (link): probably the most obvious choice. Out of the box support for Xamarin, and 'just works'. You can set up different groups of users, add analytics and crash reporting, etc. In the future you might be able to take your configuration to its big brother: VSTS. But beware! The product is in preview right now. Preview in Microsoft-land means free for now, but doesn't have to be in the future. While I expect it not to cost much/anything for basic functionality, it is something to be aware of. Not sure on this, but I think you need to invite your users by hand, so you have to know who you want to invite.
Google Play Store (link): It's kind of a mis-use, but you could of course leverage the Google Play Stores capabilites for Alpha/Beta testing. Also here you have the ability to create groups and have some basic reporting options. In terms of delivering your app you have some nice options here like A/B testing and unlike Mobile Center (again, I didn't verify this) you can setup a link with which people can enroll themselves. Depending on your needs, this might be nice. In terms of costs, this will set you back 25 dollars once. And you could develop and distribute other apps if you'd like.
Manual: send the APK file manually or hosting it on a shared location. I would prefer this least of all. People are not notified of any updates and you don't have any insights apart from something you might have incorporated in your app. Also you don't have any control over who installs or sees the app, etc.
But of course the prefered way would be to do it through the Google Play enterprise program. See this website. This provides you and your end-users with a private app store basically. Or as they say:
A managed version of Google Play is used by enterprises and their employees to access a rich ecosystem of work and productivity apps.
You can have private apps, only available for your targeted audience and still leverage the power of the Google Play store. The experience for your end-users will be unified with the regular app store.
I couldn't find a straight answer, but it seems the private apps will also cost just 25 dollars once and is included in the regular Play Store developer license.
You have a good way to do that : Use Beta this a service provided by Fabric, you can upload your app with different versions and get access to different teams in your company. It's easy to use and quick to manage.
Hope it helps.
You have multiple options at your hand:
use Bitrise or Visual Studio Mobile Center (aka HockeyApp) to build and provide a downloadable version of you app
in addiont to Bitrise or VS Mobile Center you can set up your own store. Take a look at Relution for example
build locally on your machine and push it to:
a fileshare
an FTP-site
the user by mail.
My question is how to keep common leader board. Whether Google Play Game Services is way to keep it for both iOs and Android?
Yes, as long as the app ID, bundle name, leaderboards keys are same, common leaderboards should work just fine.
There is a problem in that iOS does not default to allow for the publically sharing of activity. This means that even though you may have requested the appropriate scopes in the platform definition for sharing of info, iOS will not publically be doing that.
Also - the leaderboard to be used through Google Play Games must have its Enable tamper protection set to OFF in order for the leaderboard to be shareable outside of the Android world (e.g.; Apple, web). If this property is set to off, the All setting for the leaderboard UI will show all users' high scores, except for the iPhone users which have not permitted their activity to be displayed publically.
Yes and no. It is technically feasible to implement the leaderboard however there is a massive caveat being that a gmail account that has not previously registered a Gamer Id will not be able to sign in. This is not mentioned in the docs. This issue is particularly insidious in that many people, myself included, used the same account for testing on android and ios. As long as you signed in on android first will then be successful on iOS as well. Which is great if your game targets people who use android and iOS simultaneously lol.
I have a free version of game in play store and i am planning to update to paid version(package name will change) with more features, right now my free version has a leaderboard integrated into it, and i want my paid application to follow same leaderboard is it possible for sharing leaderboard between two apps. or its better if i go with in app purchase ?
Is it possible for sharing leaderboard between two apps?
Absolutely. You can use the same leaderboard(s) and achievements.
In your Google Developer Account, under the Game Services link, you setup a Game. (with all the Leader boards and Achievements you want to have available for any/all versions of your Game)
Then, under each Game, you then get to link Apps up to the Game. The linked apps can be up to 20 applications in total, covering Android/iOS/Web applications. Any of those can be free or paid.. .and you could have multiple leader boards, with each App deciding which leader board(s) to pick from and to display/update. If you want them to all share the same leader board(s), that's fine.. .if for some reason you want to have a leaderboard for each specific platform/app version that would be fine too, as well as maybe having an overall leaderboard for All of your different Apps. (from below, you can see I have three different apps linked to the dice game, and all three are android, and all are ready to publish, and they all use the same leaderboards/achievements and use the Room services)
The Google Leaderboard Tutorial doesn't cover this quite to the detail that you were probably looking for, and hopefully this shows how to setup multiple apps/platforms for one game a little clearer and with more confidence that it does do exactly what you are looking at implementing.
It's better if i go with in app purchase ?
I believe that depends. Usually, putting them separately may lead to a lot of extra work to get both to work together in the future.
I've made an app that using google play games services. I'm looking at the developers console now, and I see two tabs...
The top one is Applications and the one below it is Games Services. It seems that I can fill out both and publish both. I don't want to make any rash decisions before I know what these do exactly. Can some one help me out.
The Applications tab is for publishing apps/games (using apk files) to Android. These will show up in the Play store.
The Games Services is for configuring your Games Services for all platforms - this includes achievements, leaderboards, etc. These are done separately from the Android app because the same information can be used for multiple platforms, so your Android, iOS, and web versions share the exact same achievements, leaderboards, etc.
This means that for an Android app you will need to complete both of these sections and publish them. However, you can also setup the Games Services only and link them to, for example, a web app, without creating a matching entry in Applications.