Skip to main content

Sign in with Google Environment Setup (v1 Compatible)

  • Google login web authentication method. Compatible with google v1 method.
  • Configure the environment to use Google accounts.

Register Google User OAuth Client ID

  • Select Google Cloud Platform > Credentials > Create Credentials > OAuth Client ID.
  • Select Web application as the application type.
  • Add the following 2 URLs to Authorized redirect URIs:
    • https://www.playnanoo.com/oauth2redirect.html (for backward compatibility)
    • https://www.playnanoo.com/oauth2redirect.html?v=2 (for new version)
  • Check the client ID information of the added OAuth client ID.

Register Google User OAuth Client ID (iOS)

  • Select Google Cloud Platform > Credentials > Create Credentials > OAuth Client ID.
  • Select iOS as the application type, enter other information, and complete.
  • Select the added OAuth client ID and download the PLIST information.
  • Rename the downloaded PLIST file to GoogleService-Info.plist.

Unreal Engine Plugin Setup

  • Use Google Play Services plugin for Unreal Engine or a third-party Google authentication plugin.
  • For iOS, you can utilize Online Subsystem iOS.
  • For Android, you can use the Google Play Games Services plugin.

xCode Setup (iOS)

  • Run the xCode project as a CocoaPods project.
  • Add the GoogleService-Info.plist downloaded from Google Cloud Platform to your project.

  • Register the iOS URL scheme information from Google Cloud Platform in the URL Schemes of URLType.
  • The URL Schemes information is the REVERSED_CLIENT_ID value from GameService-Info.plist.

Deep Link Scheme Change Notice

The existing shared scheme mygame has been deprecated. If multiple apps using the same scheme are installed, the issue of returning to the wrong app after authentication completion occurs. You must use the Game ID registered in the PlayNANOO Console as the scheme.

The Game ID can be found on the PlayNANOO Console > Game & App Settings page under the "Game & App ID" item.

  • In Project Settings > Android > Advanced APK Packaging, add the following settings:
    • Add the following XML to Extra Tags for Application Manifest:
    • Set the android:scheme value to the Game ID registered in the PlayNANOO Console.
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="{your_game_id}" />
</intent-filter>
Configuration Example

If the Game ID registered in the PlayNANOO Console is yourgameid:

<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="yourgameid" />
</intent-filter>
  • Add the following to Project Settings > iOS > Extra PList Data:
  • Set the CFBundleURLSchemes value to the Game ID registered in the PlayNANOO Console.
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>{your_game_id}</string>
</array>
<key>CFBundleURLName</key>
<string>com.mycompany.{your_game_id}</string>
</dict>
</array>
Configuration Example

If the Game ID registered in the PlayNANOO Console is yourgameid:

<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>yourgameid</string>
</array>
<key>CFBundleURLName</key>
<string>com.mycompany.yourgameid</string>
</dict>
</array>

Android Chrome Custom Tabs Setup (Optional)

To display a browser as an in-app overlay on Android, the Chrome Custom Tabs library is required. If the library is not present, it will automatically open in an external browser.

When Using UPL (Unreal Plugin Language)

  • Add the following to your project's YourProject_UPL.xml file:
<buildGradleAdditions>
<insert>
dependencies {
implementation 'androidx.browser:browser:1.5.0'
}
</insert>
</buildGradleAdditions>

When Directly Modifying Build.gradle

  • Add the following dependency to the [Project]/Build/Android/gradle/build.gradle file.
dependencies {
implementation 'androidx.browser:browser:1.5.0'
}

ProGuard Setup

  • Add the following rules to your project's ProGuard configuration file.
  • This prevents ProGuard/R8 from removing Chrome Custom Tabs classes.
-keep class androidx.browser.customtabs.** { *; }
info

If the Chrome Custom Tabs library is not included, the SDK will automatically fall back to an external Chrome browser. Even when using an external browser, functionality works normally, and the app returns via deep link.


Deprecated: Legacy mygame Scheme Method

Deprecated (SDK 5.x and Earlier Versions)

The following method should no longer be used. All apps share the same mygame:// scheme, so if two or more apps using the PlayNANOO SDK are installed on the same device, the issue of returning to the wrong app after authentication completion occurs.

In the new method, the Game ID registered in the PlayNANOO Console is used as the scheme, enabling unique identification per app.

Legacy Method (For Reference)

Android (Legacy)

<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="mygame" android:host="oauth2redirect" />
</intent-filter>

iOS (Legacy)

<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>mygame</string>
</array>
<key>CFBundleURLName</key>
<string>com.mycompany.mygame</string>
</dict>
</array>