Skip to content
Sample games using the Google Play Games C++ SDK
Branch: master
Clone or download
claywilkinson Fixing reading data during manual conflict resolution with Snapshots.
Change-Id: I9f76d4363748a793a4227eafcd5b089a6fc39d8e
Latest commit 476c4bd Jan 19, 2018

Android Google Play Games Native Samples

These samples illustrate how to use Google Play Game Services with your Android game.

  • CollectAllTheStarsNative: Demonstrates how to use the Saved Games feature to save game data. The sample signs the user in, synchronizes their data from a named game save, and then updates the UI to reflect the saved game state.

  • TrivialQuestNative: Demonstrates how to use the Events and Quests features of Google Play Game Services. The sample displays a sign-in button and four buttons to simulate killing monsters. Clicking a button generates an event, and sends it to Google Play Game Services to track what the player is doing in the game.

  • minimalist: Demonstrates a minimal use case for the Google Play Game Services API.

  • TbmpSkeletonNative: A trivial, turn-based multiplayer game. Many players can play together in this thrilling game, in which they send a shared gamestate string back and forth until someone finishes or cancels, or the second-to-last player leaves. Be the last one standing!

  • Button-Clicker: Demonstrates real-time multiplayer using invites or quickmatch

  • Teapots: Demonstrates use of the Leaderboard and Achievement APIs.

Note: In samples with corresponding counterparts for iOS and Web (particularly, CollectAllTheStars and TypeANumber), the player can play a game seamlessly across phones of different platforms. For example, you can play some levels of CollectAllTheStars on your Android device, and then pick up your iOS device and continue where you left off! TypeANumber shows your achievements and leaderboards on all platforms; when you make progress on one platform, that progress is reflected on the other devices, as well.


  1. Change the applicationId inside each individual samples build.gradle to your own package name
  2. Modify res/values/ids.xml and place your IDs there, as given by the Developer Console (create the leaderboards and achievements necessary for the sample, if any). In the Developer console, select a resource type (Achievements, Events, Leaderboards) and click "Get Resources". Copy the contents from the console and replace the contents of res/values/ids.xml.

Build with Android Studio

This project requires Android Studio 1.5+.

  1. Android SDK version r10e or eariler.
  2. Launch Android Studio.
  3. Import the project by selecting File > New > Import Project and select samples-android/build.gradle.
  4. Edit the file (which is created by Android Studio) and set the ndk.dir property to the location of your r10e or eariler NDK.
  5. Change applicationId in the sample app build.gradle to your own package name that matches the configuration in the Play Game developer console.
  6. Replace res/values/ids.xml contents with your values from the developer console.
  7. Run the select project. Android Studio will compile, load and start your project on your device

All projects could be built at one shot from Android Studio menu "Build" -> "Clean Project"/"Rebuild Project" you could also build with Gradle on Terminal/Command line

Build using Gradle on OS X or Linux

  1. Install Android Studio

  2. Set the path to the Android SDK

    export ANDROID_HOME=~/Library/Android/sdk

  3. Add the SDK to your path

    export PATH=$PATH;$ANDROID_HOME/tools;$ANDROID_HOME/platform-tools

  4. Set the path to the Android NDK

    export ANDROID_NDK_HOME=<PATH_TO_NDK>/android-ndk-r10e

  5. Execute the build script

    ./gradlew assemble

Build on Windows using Gradle

  1. Install Android Studio

  2. Set the path to the Android SDK

    set ANDROID_HOME=C:\Users<yourusername>\AppData\Local\Android\sdk

  3. Add the SDK to your path

    set PATH=%PATH%;%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools

  4. Set the path to the Android NDK

    set ANDROID_NDK_HOME=C:\Users<yourusername>\Desktop\android-ndk-r10e

  5. (Optional) On some versions of Windows it is helpful to map the samples folder to a shortened path.

    subst G: C:<full-path-to-sample-folder>

  6. Execute the build script

    G: gradlew.bat assemble


If you've found an error in these samples, please file an issue.

Patches are encouraged, and may be submitted by forking this project and submitting a pull request through GitHub. Please see for more details.


Copyright 2015 Google, Inc.

Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

You can’t perform that action at this time.