Game Services API

API for mobile games’ Leaderboards and Achievements

Francisco Nicolau
Nico’s SoftwareDev Projects
3 min readFeb 17, 2020

--

Project Description

This project was developed by myself in the setting of a Summer Internship at Aptoide in 2019. The goal of the project was to build an HTTP REST API that could provide some of the same functionality as Google Play’s Game Service in order to provide an alternative for mobile games outside the google ecosystem.

Android Simulator (on the left) requests being made to the API (on the right)

Motivation

Google Play’s Game Services are very handy as they allow mobile game developers to implement a simple APK in their existing application and suddenly gain the ability to track a large number of player data such as leaderboards, achievements, cloud saves or even make use of more complex features like synchronous and asynchronous multiplayer.

The value in having access to this tool is obvious and undeniable, but what if your app isn’t published in Google’s Play store? Aptoide’s goal is to provide a platform that can be used completely independently of the Play Store or any of Google’s Services, in order to reach this objective however you lose the privilege of employing these fantastic out-of-the-box features in your game.

Aptoide’s Android App Store

Development Process

Over the course of two months, I strived to create a service that could begin to fill this gap, with the primary aim of making the transition from one platform to another as simple and seamless as possible.

This proved to be particularly challenging as it was my first time building an API of any sort and I had to get accustomed to the existing technology stack like Aptoide’s PHP framework and other peripheral software such as Postman and Docker.

The final stage of the project did not cover the entire functionality that is expected of a Game’s Service (as that was not within the project’s scope) but it did provide the possibility to use leaderboards and achievements while laying out the groundwork necessary to implement the remaining features relatively easily from there on out. This API followed Google’s endpoint structure and message syntax quite closely allowing for straightforward implementation when coupled with our own APK.

Read more about the development process and features.

Google Play Game Service Default Interface

Demo

By the end of my internship, I felt I had, not only learned a lot from the experience and the people I had the pleasure to work with but also that I had gained a pretty decent understanding of the tools I was using.

Check out the video below to see the project in motion

Demo of the project in action

--

--

Francisco Nicolau
Nico’s SoftwareDev Projects

I’m a CS Master’s student interested in using all sorts of technology as a medium to challenge myself and express creativity.