Intelligent Assistant
Chat with our virtual assistant to get answers promptly.
You can integrate Google Play Games account sign-in into your app so that your users can be identified by AppGallery Connect using their Google Play Games accounts.
Auth Service allows you to integrate Google Play Games account sign-in in either of the following methods:
Open the app-level build.gradle file (usually in the app directory) and add dependencies on Huawei's Auth Service SDK and Google Play Games' SDK to the dependencies block.
- dependencies {
- implementation "com.huawei.agconnect:agconnect-auth-googlegame:1.9.0.300"
- implementation "com.google.android.gms:play-services-auth:{version}"
- }
- dependencies {
- embed "com.huawei.agconnect:agconnect-auth-googlegame:1.9.0.300"
- embed "com.google.android.gms:play-services-auth:{version}"
- }
Set google_client_id to the client ID that you have configured when enabling the Google authentication mode. The number (typically 12 or more digits) at the beginning of the client ID is the value of google_app_id.
- <string name="google_app_id">5758********</string>
- <string name="google_client_id">5758********-lp1cdv4uu2k1jjm1ksi5n59tta0mdkg9.apps.googleusercontent.com</string>
- <meta-data
- android:name="com.google.android.gms.games.APP_ID"
- android:value="@string/google_app_id" />
- <meta-data
- android:name="com.google.android.gms.version"
- android:value="@integer/google_play_services_version" />
- AGConnectAuth.getInstance().signIn(this,AGConnectAuthCredential.GoogleGame_Provider).addOnSuccessListener(new OnSuccessListener<SignInResult>() {
- @Override
- public void onSuccess(SignInResult signInResult) {
- // onSuccess
- AGConnectUser user = signInResult.getUser();
- }
- })
- .addOnFailureListener(new OnFailureListener() {
- @Override
- public void onFailure(Exception e) {
- // onFail
- }
- });
- AGConnectAuth.getInstance().signIn(this, AGConnectAuthCredential.GoogleGame_Provider).addOnSuccessListener {
- // updateUI
- }.addOnFailureListener {
- // onFailure
- }
- AGConnectUser user = AGConnectAuth.getInstance().getCurrentUser();
- val user = AGConnectAuth.getInstance().currentUser
This step is for reference only. For details, please refer to Google Play Games documentation.
- @Override
- protected void onActivityResult(int requestCode, int resultCode, Intent data) {
- super.onActivityResult(requestCode, resultCode, data);
-
- if (requestCode == RC_SIGN_IN) {
- Task<GoogleSignInAccount> task = GoogleSignIn.getSignedInAccountFromIntent(data);
- task.addOnSuccessListener(new OnSuccessListener<GoogleSignInAccount>(){
- @Override
- public void onSuccess(GoogleSignInAccount googleSignInAccount) {
- String serverAuthCode = googleSignInAccount.getServerAuthCode();
- }
- }).addOnFailureListener(new OnFailureListener(){
- @Override
- public void onFailure(@NonNull Exception e) {
- }
- });
- }
- }
- AGConnectAuthCredential credential = GoogleGameAuthProvider.credentialWithToken(serverAuthCode);
- AGConnectAuth.getInstance().signIn(credential)
- .addOnSuccessListener(new OnSuccessListener<SignInResult>() {
- @Override
- public void onSuccess(SignInResult signInResult) {
- // onSuccess
- AGConnectUser user = signInResult.getUser();
- }
- })
- .addOnFailureListener(new OnFailureListener() {
- @Override
- public void onFailure(Exception e) {
- // onFail
- }
- });
- val credential = GoogleGameAuthProvider.credentialWithToken(serverAuthCode)
- AGConnectAuth.getInstance().signIn(credential).addOnSuccessListener {
- // onSuccess
- val user = it.user
- }.addOnFailureListener {
- // onFail
- }