Skip to main content

Google Play Games Services

A Cordova plugin that let's you interact with Google Play Games Services.

https://github.com/artberri/cordova-plugin-play-games-services

Stuck on a Cordova issue?

Don't waste precious time on plugin issues.

If you're building a serious project, you can't afford to spend hours troubleshooting. Ionic’s experts offer premium advisory services for both community plugins and premier plugins.

Installation#

$ npm install cordova-plugin-play-games-services $ npm install @ionic-native/google-play-games-services $ ionic cap sync

Supported Platforms#

  • Android

Usage#

React#

Learn more about using Ionic Native components in React

Angular#

import { GooglePlayGamesServices } from '@ionic-native/google-play-games-services/ngx';

constructor(private googlePlayGamesServices: GooglePlayGamesServices) { }
...
// Authenticate with Play Games Servicesthis.googlePlayGamesServices.auth()    .then(() => console.log('Logged in to Play Games Services'))    .catch(e) => console.log('Error logging in Play Games Services', e);
// Sign out of Play Games Services.this.googlePlayGamesServices.signOut()    .then(() => console.log('Logged out of Play Games Services'))    .catch(e => console.log('Error logging out of Play Games Services', e);
// Check auth status.this.googlePlayGamesServices.isSignedIn()    .then((signedIn: SignedInResponse) => {        if (signedIn.isSignedIn) {            hideLoginButton();        }    });
// Fetch currently authenticated user's data.this.googlePlayGamesServices.showPlayer().then((data: Player) => {   console.log('Player data', data);});
// Submit a score.this.googlePlayGamesServices.submitScore({    score: 100,    leaderboardId: 'SomeLeaderboardId'});
// Submit a score and wait for reponse.this.googlePlayGamesServices.submitScoreNow({    score: 100,    leaderboardId: 'SomeLeaderboardId'}).then((data: SubmittedScoreData) => {   console.log('Score related data', data);});
// Get the player score on a leaderboard.this.googlePlayGamesServices.getPlayerScore({    leaderboardId: 'SomeLeaderBoardId'}).then((data: PlayerScoreData) => {    console.log('Player score', data);});
// Show the native leaderboards window.this.googlePlayGamesServices.showAllLeaderboards()    .then(() => console.log('The leaderboard window is visible.'));
// Show a signle native leaderboard window.this.googlePlayGamesServices.showLeaderboard({    leaderboardId: 'SomeLeaderBoardId'}).then(() => console.log('The leaderboard window is visible.'));
// Unlock an achievement.this.googlePlayGamesServices.unlockAchievement({    achievementId: 'SomeAchievementId'}).then(() => console.log('Achievement sent'));
// Unlock an achievement and wait for response.this.googlePlayGamesServices.unlockAchievementNow({    achievementId: 'SomeAchievementId'}).then(() => console.log('Achievement unlocked'));
// Incremement an achievement.this.googlePlayGamesServices.incrementAchievement({    step: 1,    achievementId: 'SomeAchievementId'}).then(() => console.log('Achievement increment sent'));
// Incremement an achievement and wait for response.this.googlePlayGamesServices.incrementAchievementNow({    step: 1,    achievementId: 'SomeAchievementId'}).then(() => console.log('Achievement incremented'));
// Show the native achievements window.this.googlePlayGamesServices.showAchivements()   .then(() => console.log('The achievements window is visible.'));