Android向けのXsolla SDKのネイティブアプリをプロジェクトに接続する方法
ネイティブのAndroid向けのXolla SDKを利用して、ソーシャルログインや購入後のアプリケーションへの復帰などの機能をモバイルアプリケーションに実装することが可能です。
ネイティブSDKをCocos Creatorのプロジェクトに接続するには、以下の手順で行います:
- Android Studio用のプロジェクトを生成します。
- Android向けのXsolla SDKをプロジェクトに接続します。
- Android Studioでプロジェクトをセットアップします。
- Cocos Creator側でAndroid向けのXsolla SDKを初期化します。
Android Studio用のプロジェクトを生成する
- Cocos Creatorのエディターで、メインメニューから
Project > Build に移動します。アプリケーションが以前にプラットフォーム用にビルドされていない場合、ビルド用の新しい設定を作成するためのウィンドウが開きます。エディタにすでにビルド構成がある場合は、New Build Task をクリックして、新しい構成を作成します。 New Build Configuration ウィンドウで、以下の変更を行います:
Platform フィルド、利用可能なビルドプラットフォームのリストからAndroid を選択します。APP ABI フィルドで、arm64-v8a を指定します(推薦)。エミュレーター上でモバイルアプリケーションを実行する予定がある場合は、x86 を指定します。Target API Level フィルドで、android-28 またはそれ以降を指定します。
Build をクリックします。
その結果、Android Studio用のプロジェクトが<CocosProjectPath>/build/android/proj
ディレクトリに生成されます。すべてのAndroidビルドに使われるファイルは<CocosProjectPath>/native/engine/android
ディレクトリに生成されます。
Android向けのXsolla SDKをプロジェクトに接続する
- Xsolla SDKのカスタムアクティビティをソースコードに追加します。そのためには:
- 既存のファイルを
<CocosProjectPath>/extensions/xsolla-commerce-sdk/native/android/Activities
フォルダーから<CocosProjectPath>/native/engine/android/app/src/com/cocos/game
フォルダーにコピーして置き換えます。 <CocosProjectPath>/native/engine/android/app/AndroidManifest.xml
ファイルを任意のテキストエディタで開き、アクティビティーのリストに以下の行を追加します:
- 既存のファイルを
Copy
- kotlin
<activity
android:name="com.cocos.game.XsollaNativeAuthActivity"
android:configChanges="orientation|screenSize"
android:theme="@android:style/Theme.NoTitleBar"/>
<activity
android:name="com.cocos.game.wxapi.WXEntryActivity"
android:exported="true"
android:theme="@android:style/Theme.NoTitleBar"/>
- プロジェクトのビルド設定にAndroid向けのXsolla SDKライブラリを依存関係として追加します:
- Android Studioで、プロジェクトの
build.gradle
ファイルを開きます。 - 依存関係セクションに以下の行を追加します:
- Android Studioで、プロジェクトの
Copy
- kotlin
implementation 'com.xsolla.android:login:1.2.1'
implementation 'com.xsolla.android:login-facebook:1.2.1'
implementation 'com.xsolla.android:login-google:1.2.1'
implementation 'com.xsolla.android:login-wechat:1.2.1'
implementation 'com.xsolla.android:login-qq:1.2.1'
- 変更を有効にするには、
Sync Now
コマンドを実行します。
- 変更を有効にするには、
Android Studioが対応するライブラリをダウンロードし、プロジェクト内でそのメソッドを使用することができます。
Android Studioでプロジェクトをセットアップする
- Android Studioで、
<CocosProjectPath>/build/android/proj
ディレクトリからプロジェクトを開きます。 - Android向けのXolla SDKの動作に必要なAndroidXネイティブライブラリを追加します:
gradle.properties
ファイルで、次の行を追加します:
Copy
- kotlin
android.useAndroidX=true
android.enableJetifier=true
- 変更を有効にするには、
Sync Now
コマンドを実行します。
- 変更を有効にするには、
Cocos Creator側でAndroid向けのXsolla SDKを初期化する。
Android向けのXsolla SDKの機能を使用する前に、SDKを初期化する必要があります。これを行うには、IDEを使用してプロジェクトに初期化スクリプトを追加するか、プロジェクトディレクトリにファイルをコピーしてください。
Cocos Creatorで、ネイティブJavaメソッドの呼び出しは、ビルトインのリフレクションメカニズムを利用してTypeScriptで行われます。
Cocos Creatorプロジェクトでは、xLoginInit
メソッドを呼び出してXsolla SDKを初期化する必要があります。
初期化スクリプトの例:
Copy
- typescript
if(sys.platform.toLowerCase() == 'android') {
jsb.reflection.callStaticMethod("com/cocos/game/XsollaNativeAuth", "xLoginInit",
"(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V",
Xsolla.settings.loginId, Xsolla.settings.clientId.toString(), "https://login.xsolla.com/api/blank",
this.facebookAppId, this.googleAppId, this.wechatAppId, this.qqAppId);
}
}
お知らせ
初期化スクリプトは、アプリケーションの開始時に、例えば、シーンにアタッチされたコンポーネントの
start
メソッドで呼び出す必要があります。この記事は役に立ちましたか?
ご意見ありがとうございました!
あなたのメッセージを確認し、体験を向上させるために利用させていただきます。誤字脱字などのテキストエラーを見つけましたか? テキストを選択し、Ctrl+Enterを押します。