追加のガイド

このセクションには、now.ggクラウドに関連する追加ガイドが含まれており、now.ggクラウドのサービスやAPIを便利に設定することができます。

利用可能な追加のガイド

以下のガイドをご利用いただけます。




ユーザーのステータスを保存するためのクラウドストレージの設定

ゲームは通常、ゲームセッション全体の継続性を維持するために、ユーザーの進行状況をデバイスファイルにローカル保存します。 now.ggはこの機能をクラウド上で提供し、ユーザーにシームレスなゲームプレイ体験を提供します。

このセクションでは、保存ファイルパスと除外ファイルパスを定義することで、ユーザーのゲーム進行データの保存と復元に使用されるnow.ggクラウドストレージの設定が主になります。「保存」および「除外」ファイルパスを定義することは、ゲームの読み込み時間を短縮し、ユーザーエクスペリエンスを向上させ、now.ggクラウドストレージの最適な使用を保証するために必要不可欠です。クラウドストレージを設定するには、以下を指定する必要があります:

  • 保存ファイルのパス
    クラウド上に保存するファイルまたはフォルダの場所を示します。通常、保存ファイルは /data/data/<package_name>/<file_name> に保存されます。
  • 除外ファイルパス
    クラウド上に保存したくないファイルやフォルダの場所を示します。

ファイルパスの設定

この設定は、now.ggに提出するすべての新しいアプリに対して行うことができます。既に提出・公開済みのアプリの場合は、新しいバージョンのアプリを提出する必要があります。

ファイルパスを設定するには以下の手順に従ってください。

  • nowStudioにログインします。
  • 新しいアプリを追加したり、新しいバージョンを提出します。
    • 新しいアプリを追加するには、こちらの手順に従ってください。
    • 新しいバージョンのアプリを提出する場合はこちらの手順に従ってください。
      • 新しいバージョンを提出する際、2番目のオプション「アセット、タイトル、説明、または地域情報とともにAPKとアプリのコンテンツを更新する」を選択し、「提出」をクリックします。
  • 「アプリコンテンツ」タブにて
    • 保存ファイルパスと除外ファイルパスを指定します。
    • 「保存」をクリックします。
  • アプリ用のリリースを作成します。

注意事項:

  • 複数のファイルパスを指定する場合は、スペースやカンマではなく、改行で区切ってください。
  • 保存ファイルパスの場合、指定したファイルとフォルダのみが保存され、次のユーザー セッションで復元されます。
  • 除外ファイルパス(任意)では、指定したファイルとフォルダはクラウド上に保存されません。

重要な情報

  • ゲームの読み込み時間は、ユーザーセッション用に復元されるゲームデータのサイズに依存します。
    • シームレスなアプリ体験のために、理想的な保存ファイルサイズは15MBまでを推奨します。
      • 推奨ファイルサイズは、単一のファイル、または複数のファイルの合計サイズに適用されます。
    • 大きなファイルを含めると、ゲームの読み込み時間に影響を与える可能性があります。
  • より良いエクスペリエンスのために、アプリ内でAndroid IDなどのAndroid識別子の使用を避けることをお勧めします。



アプリファイルの準備

このガイドを使用して、nowStudioにアップロードするアプリファイルを準備できます。

nowStudioでリリースを作成するには、アプリファイルを準備する必要があります。スタンドアロンのAPK、またはAPKとアセットのZipファイルのどちらでも構いません。

以下のいずれかを準備することができます:

  • スタンドアロンのAPKファイル
    • すべてのアセットを含む完全なAPKを提供することができます。
  • APKとアセットのZipアーカイブ
    • 通常、ゲームは起動時に必要なアセットをダウンロードするため、ゲームプレイに遅延が発生します。 now.ggを使用すると、APKとアセットを含むZipが提供されるため、ゲームの読み込み時間が大幅に短縮され、ユーザーは瞬時にゲームをプレイできるようになります。

1. APKファイルの準備

このセクションでは、nowStudioにアップロードするAPKファイルを準備する手順を説明します。

以下の要件を満たす APKファイルを用意してください:

  • ARM用64bit Androidアプリ
  • すべてのアセットを含む完全なAPK

APKを準備したら、nowStudioにアプリを追加することができます。

2. APKとアセットZipアーカイブを準備する

このセクションでは、nowStudioでアプリ/ゲームのAPKとアセットのZipアーカイブを準備する手順を説明します。

通常、ゲームは起動時に必要なアセットをダウンロードするため、ゲームプレイに遅延が発生します。 now.ggを使用すると、APKとアセットを含むZipが提供されるため、ゲームの読み込み時間が大幅に短縮され、ユーザーは瞬時にゲームをプレイできるようになります。

手順

1. バンドルの作成 (Zipアーカイブ)

アプリとアセットのZipアーカイブを作成するには、以下の指定されたフォーマットと内容に従ってください:

  • APKファイル
  • metadata.json
  • アセットディレクトリ
    • アセット1
    • アセット2
    • その他のアセット (ファイルまたはディレクトリ)
  • Obbディレクトリ
    • メイン.<パッケージバージョンコード>.<パッケージ名>.obb
    • パッチ.<パッケージバージョンコード.<パッケージ名>.obb
以下は、ゲームAPK + アセットバンドルのサンプルです。

重要な情報

  • アプリバンドルのアセットフォルダには、複数のオブジェクトを含めることができます。
    • あらゆるファイルやディレクトリを含むことができます。
  • ユーザーの希望に応じて、アセットまたはObbのどちらか、あるいは両方をご提供いただくことをお勧めします。ただし、アップロードを成功させるには、どちらか一方が必須です。

2. マニフェストファイルの作成

次のサンプルJSONは、マニフェストファイルmetadata.jsonに必要なフォーマットを示しています。

{
    "assets": [
        {    
            "name": "asset1.xyz",
            "location": "/data/media/0/Android/data/<packageName>/files"
        },
        {
            "name": "asset2.unity3d",
            "location": "/data/media/0/Android/data/<packageName>/files"
        },
        {
            "name": "OtherAssets",
            "location": "/data/data/<packageName>/files"
        }
    ]
}

3. アプリの追加

APKとアセットZipアーカイブを準備したら、nowStudioにアプリを追加してください。




カスタムドメインの追加と設定

このガイドでは、now.gg以外のドメインでアプリをホストしたい場合のカスタムドメインの追加手順について詳しく説明します。

now.ggクラウドに加え、nowStudioでアプリ用のカスタムドメインを追加することで、他のドメインでアプリをホストすることもできます。

以下のシナリオについての説明:

  • 新規アプリにカスタムドメインを追加する。
  • 公開済みアプリにカスタムドメインを追加する。

1. 新規アプリ用にカスタムドメインを追加する

このセクションでは、新規のアプリにカスタムドメインを追加する手順を説明します。

手順は以下の通りです。

  • 新規のアプリを追加します。
  • 「全アプリ」セクションからアプリを選択します。
    • アプリ名の前にある「詳細を見る」をクリックします。
  • 「プロダクション」セクションで、「情報」をクリックします。
  • 以下のように、所定のフィールドにカスタムドメインのアドレスを入力します。

    注意:追加したいドメインを所有していることを確認してください。
  • その他の必要事項が記入されていることを確認します。
  • 「保存」をクリックします。
    • 当社のチームが、入力されたドメインの詳細を確認します。ドメインの詳細が確認されたら、ドメインのマッピングを続行できます。
  • 必要なアプリ情報をすべて提供したら、アプリのリリースを作成することができます。
  • マッピングの詳細を受け取ったら、以下のように「情報」タブ内の「マッピングの詳細」をクリックしてマッピングの詳細を見ることができます。
  • ドメインマッピングの詳細は以下の通りです。
  • 提供された詳細を使用して、DNSプロバイダーを設定することができます。
  • 自身のDNSプロバイダーで提供された設定を実行した後、ゲームは自身のドメインで利用できるようになります。


2. 公開済みアプリ用にカスタムドメインを追加する

このセクションでは、すでに公開されているアプリにカスタムドメインを追加する手順を説明します。

手順は以下の通りです。

  • 「全アプリ」セクションからアプリを選択します。
    • アプリ名の前にある「詳細を見る」をクリックします。
  • 「プロダクション」セクションで、「情報」をクリックします。
  • 画面右下の「編集」ボタンをクリックします(これで提供されたフィールドを編集できるようになります)
  • 以下のように、所定のフィールドにカスタムドメインのアドレスを入力します。

    ※追加したいドメインを所有していることを確認してください。
  • 「保存」をクリックします。
  • 以下のような確認画面が表示されます。
  • 当社のチームが、提供されたドメインの詳細を確認します。ドメインの詳細が確認されたら、ドメインのマッピングを続行できます。
  • マッピングの詳細を受け取ったら、以下のように「情報」タブ内の「マッピングの詳細」をクリックして表示することができます。
  • ドメインマッピングの詳細は以下の通りです。
  • 提供された詳細を使用して、DNSプロバイダーを設定することができます。
  • 自身のDNSプロバイダーで提供された設定を実行した後、ゲームは自身のドメインで利用できるようになります。



Nowgg CLIを使用したアプリのアップロード

nowgg CLIは、アプリのビルドをnowStudioに簡単にアップロードできるコマンドラインツールです。このガイドでは、この機能の詳細を説明します。

必須事項

  • アプリID
    • nowStudio上のアプリを識別するために使用されます。
    • アプリIDは、nowStudioのアプリの詳細セクションで確認できます。
  • パブリッシャートークン
    • パブリッシャー会社を識別するために使われます。
    • パブリッシャートークンはnowStudioのアカウント情報セクションにて利用できます。

nowgg CLIの使用

macOSまたはWindowsでターミナルを開きます。

インストールと初期化

1. CLIツールをインストールする

  pip install nowgg

2. nowgg CLIを初期化する

  nowgg init --token "<your_publisherToken_from_nowStudio>"

nowgg CLIを使用してアプリをnowStudioにアップロードする

1. nowStudioにアプリをアップロードする

  nowgg upload --app_id <your_app_id> --file_path "/directory/sample.apk" --apk_version <app_version_name> --version_code <app_version_code>

自身のアプリはnowStudio内のアプリライブラリにアップロードされます。

2. テストトラックへのアプリのアップロードとデプロイメントのトリガー

  nowgg upload --app_id <your_app_id> --file_path "/directory/sample.apk" --apk_version <apk_version> --version_code <app_version_code> --deploy 

重要な情報

  • 各テストトラックには、そのテストトラックでドラフトリリースを作成するために使用できる固有のapp_idがあります。
    • 例えば、app_id1234の場合、テストトラック1のapp_id1234_t1になります。
  • --deployは、指定したテストトラックへのデプロイ処理をトリガーします。

ヘルプ

  nowgg -h
   nowgg init -h
   nowgg upload -h

重要な情報

  • nowggコマンドの実行中に、‘command not recognized’(コマンドを認識できません) エラーが発生した場合は、<python ディレクトリ>\<Scripts> をPATHに追加してください。
  • ‘permission-related errors’(権限に関するエラー)が発生した場合は、管理者としてコマンドを実行してください。



サブスクリプションの理解

以下の文書は、nowStudioで提供されているサブスクリプション機能の重要な側面に焦点を当てています。

サブスクリプションは、now.gg上のアプリ内商品であり、ユーザーに定期的な料金を課金してアプリ内のコンテンツやサービスにアクセスさせます。

nowStudioでは、簡単にサブスクリプションを作成し、管理し、販売することができる多機能な「サブスクリプション」機能が提供されています。アプリ内商品とサブスクリプション商品の主な違いは、アプリ内商品がユーザーに一度だけの料金を課金するのに対し、サブスクリプションは定期的な料金が発生する点です。

nowStudioでサブスクリプションを作成し、管理する方法を理解するには:

now.gg Paymentsモジュールを使用してアプリに定期購読を実装する方法を理解するには、次のガイドに従ってください:

重要: このページの情報に加えて、now.ggポリシーも参照する必要があります。

サブスクリプションの概要

このセクションでは、サブスクリプションについて紹介します。

  • サブスクリプション
  • 課金期間
    • 自動更新
  • 特典
  • 価格設定
    • 価格変更

サブスクリプション

サブスクリプションは、ユーザーが特定の期間にわたってアクセスできる特典のセットを提供します。同じアプリ内に複数のサブスクリプションを持つことができ、異なる特典セットや単一の特典セットのティア(「Gold」や「Diamond」パックなど)を表すことができます。ユーザーはnow.gg上のあなたのアプリでこれらのサブスクリプションを購入してアクセスできます。


課金期間

now.ggでは、サブスクリプションの期間を選択することができます。利用可能な課金期間は以下の通りです:

  • 4週ごと
  • 月ごと
  • 2か月ごと
  • 3か月ごと
  • 4か月ごと
  • 6か月ごと
  • 8か月ごと
  • 年ごと

自動更新

now.ggのサブスクリプションは自動更新されます。ユーザーは特定の課金期間のサブスクリプションを購入し、各期間の終わりに自動的に更新されるため、中断することなくサブスクリプションを利用できます。サブスクリプションはユーザー、開発者、またはnow.ggによってキャンセルすることができます。


特典

サブスクリプションには最大4つの特典を追加でき、ユーザーが受け取る内容を理解するのに役立ちます。サブスクリプションに関連する中核的な特典を強調する必要があります。


支払い拒否

更新料金の支払いが拒否された場合、now.ggはユーザーに支払い問題の解決を促します。未解決の場合、サブスクリプションは自動的に期限切れになります。




埋め込みモジュールでウェブサイトにクラウドゲームを導入。

now.gg Embed Javascript モジュール は、開発者が任意の Web サイトにゲームを簡単に埋め込めるフレームワークを提供します。

now.ggのEmbed モジュール を使って開発者が実現できること:

  • あらゆるWebページに簡単にゲームを埋め込めます
  • アプリとゲームが埋め込まれたWebページの間でイベントドリブンな通信を可能とする高度な機能を実装できます
  • ゲームをウェブサイトに埋め込むことで露出がより高まり、ユーザのエンゲージメントとリテンションを高めます

前提条件

now.gg Embed モジュールと統合するためには以下の前提条件を満たす必要があります:

  • ホワイトリスト済みのドメイン – now.gg Embeddingは、now.ggがホワイトリストに登録したドメインでのみ動作します。ホワイトリストに登録されたいドメインのリストを dev-support@now.gg にご連絡ください。
  • clientIdclientId取得するために dev-support@now.gg.にご連絡ください。
  • appIdappId を取得するには、ここで説明されている手順に従います。

上記の前提条件が満たされたら、次のセクションに進み、ウェブページにゲームを埋め込むことができます。


埋め込みモジュールを実装する

now.gg Embed モジュールの統合方法:

  1. Embed モジュール をウェブサイトに追加します
  2. Iframe内でゲームを開始します
  3. さらに次のセクションで、高度な機能を埋め込んで統合する手順を説明します

重要な情報

  • ゲームがテストまたは本番トラックにデプロイされ、埋め込み用のゲームリンクがあることを確認してください。
  • 以下のリンクから、リリースを作成し、アプリをデプロイすることができます。

1. Embed モジュールの追加

最初のステップは対象のウェブサイトにEmbed モジュールを追加することです。

now.gg Embed モジュールをウェブサイトに追加するには、以下に示すようにモジュールリソースのjavascriptをscriptタグ内に追加します。

<script type="text/javascript" src="https://cdn.now.gg/external/sdk/ifp-sdk-1.1.0.min.js"></script>

2. Iframe内でゲームを開始する

now.gg Embed モジュール リソースを追加すると、モジュールを初期化することでnow.gg iframe を使用したゲームをウェブサイトに埋め込むことができます。

手順は以下の通りです。

  • まず、iframeParentElementappEventCallbackFunctionsdkEventCallbackFunction. を定義します。.
  • 次に以下に示すようにNowIfpクラスのinit関数をクラウドゲームを開始するために必要なパラメータと共にコールします。
const iframeParentElement = document.getElementById("your_iframe_element");

 // Androidアプリから送信されたイベントを処理するためのコールバック関数
 const appEventCallbackFunction = (event) => {
     console.log(event.name); 
     console.log(event.data);
     // ここでイベントベースの処理を行うことができます
 }; 

 // JavaScript モジュールのイベントを処理するためのコールバック関数
 const sdkEventCallbackFunction = (event) => {
     console.log(event.name); 
     console.log(event.msg);
     // ここでイベントベースの処理を行うことができます
 }; 


 NowIfp.init({
     clientId: <"your_clientId"> ,
     appId: <"your_production_appId/your_test_track_appId"> , \\ appId example - Test Track: "1234_t1" | Production: "1234"
     iframeParentElement: iframeParentElement,
     customData: {} // アプリ固有のカスタム処理用
     appLaunchData: {
         // 起動引数を埋め込みモジュールに渡し、シリアライズされてアプリに起動インテントで渡されます。
         [key]: [value]
     } 
     appEventCallback: appEventCallbackFunction,
     sdkEventCallback: sdkEventCallbackFunction,
     isNowLoginEnabled: true
 });

appIdを取得する

このセクションを使用して、nowStudio内でappIdを見つけることができます。

重要な情報

  • appIdは、nowStudio上のアプリの固有の識別子です。
  • nowStudioは、テスト環境と本番環境で異なるappIdを生成します。
    • テストトラック:appIdは、アプリがデプロイされた後にのみ表示されます。
    • 本番用:appIdは、アプリを追加した後「アプリの詳細」セクションでも確認できます。
1. テストトラック用のappID
  • テストトラック用にappIDを見つける方法:
  • 全アプリ > アプリを選択 > テストトラックに移動します。
    • appIdは、以下のようにライブテストリリースに記載されています。
2. 本番用のappID
  • 本番用にappIDを見つける方法:
  • 全アプリ > アプリを選択 > リリースに移動します。
    • appIdは、以下のように本番リリースに記載されています。

パラメータ

パラメータ 必須項目 説明
clientId string はい 一意のクライアント識別子
appId string はい now.gg開発者ポータルでアプリ/ゲームに関連付けられたアプリID
iframeParentElement element はい embeddedプレーヤがレンダリングされるiframeParentElement
customData object いいえ 特定の処理を必要とするカスタムデータ
appLaunchData object いいえ アプリの起動インテントエクストラとして送信される追加データ
参照 – appLaunchDataを定義する セクション
appEventCallback function No アプリ関連のイベントを処理するためのアプリイベントコールバック関数
参照 – Embed内でゲームを開始する セクション-
sdkEventCallback function No モジュール関連イベント処理用モジュールイベントコールバック関数
参照 – Embed内でゲームを開始する セクション
isNowLoginEnabled boolean No true – アプリ起動時に now.gg ログインが起動されます。
false – アプリ起動時に now.gg ログインが起動されません。

now.gg クラウドによってゲームが対象のウェブページに埋め込まれました。


埋め込みに関する高度な機能

このセクションでは、ウェブサイト(HTMLページ)に埋め込んだゲームに高度な機能を実装する手順を説明します。

埋め込んだゲームのゲーム体験をさらに向上させるために、now.gg Embed モジュールでは以下の機能を提供しています。:

  • now.ggクラウド上のアプリからHTMLページへイベントとデータを渡す機能
  • 起動時にアプリの起動パラメータをアプリに渡す機能
前提条件
  • 下記機能を利用するためにnow.gg Events moduleをダウンロードしてAndroidアプリに統合してください。
1. アプリからHTMLページへイベントを渡す

now.ggイベントモジュールと統合すると、now.ggクラウド上のアプリからゲームが埋め込まれたHTMLページにイベントやデータを渡すことができます。

ご参照ください :

  • now.gg イベントモジュールドキュメントのイベントとデータをHTMLページに送信 セクション
2. 起動時にHTMLページからパラメータをアプリに渡す

HTMLページからアプリの起動パラメータをアプリに渡すことができます。 NowIfp.init に渡されるappLaunchDataを定義し、アプリで取得するためのサンプルコードスニペットをご確認いただけます。

a. appLaunchDataを定義する

appLaunchDataNowIfp.init()のパラメータとして渡されます。それから、起動イン テントのパラメータとしてアプリに渡されます。
以下のコードで appLaunchDataNowIfp.init()に渡す方法を示します。

NowIfp.init({
     clientId: <"your_clientId"> ,
     appId: <"your_appId"> ,
     iframeParentElement: iframeParentElement,
     customData: {} // for app-specific custom handling
     appLaunchData: {
     // 起動引数を埋め込みモジュールに渡し、シリアライズされてアプリに起動インテントで渡されます。
           [key]: [value]
     } 
     appEventCallback: appEventCallbackFunction,
     sdkEventCallback: sdkEventCallbackFunction,
     isNowLoginEnabled: true
 });
b. アプリでappLaunchData を取得する

この手順により、アプリはHTMLページからアプリに送信されたappLaunchDataを取得することができます。

以下のコードスニペットはアプリからキーを使用して値を取得する方法を示しています。

//Retrieves the value using key passed as app launch parameter
 string value = NowGGEventsSdkManager.Instance.GetAppLaunchDataProperty(key);

ご参照ください :

  • now.gg イベントモジュールドキュメントのアプリでの起動データの取得セクション

重要な情報

  • appLaunchData はアプリの起動時にのみ渡されます。アプリの実行中は渡すことはできません。

デモプロジェクト

now.gg では、このモジュールに関連するエンドツーエンドのフローをご確認いただけるnow.gg Embed モジュールのデモHTMLページを提供しています。

以下の手順に従って、Embedding のデモを実行してください。

  • ブラウザで now.gg Embed モジュール Demoを開きます。
  • Embed デモでは下記についてご確認いただけます。
  • App Launch Data
    • 起動インテントとしてappLaunchData を追加したい場合:
    • + ボタンをクリックします.
    • Key および Value フィールドにデータを入力することができます。
  • モジュール Init
    • Initialize 埋め込みモジュール ボタンをクリックすると、モジュールを初期化してクラウドゲームを起動します。
    • 初期化イベントは以下に示すようにsdkEventCallbackによってキャプチャされます。
    • 初期化に成功すると、以下に示すようにnow.ggのiframeの中でゲームが開始します。
  • UnityからWebクライアントへデータを送信する(HTML)
    • Open Link
      • open link ボタンをクリックすると設定されたリンクを新しいタブで開きます。
    • Browser Event
      • browser event ボタンをクリックするとUnityからHTMLページへデータを 送信します。このデータはユーザの実装によって自由に利用することができます。
      • アプリのイベントは、以下のように appEventCallback関数でキャプチャされます。



×

目次

追加のガイド

目次

  • 利用開始にあたって
  • 追加のガイド

ドキュメント改訂版 1.0

テキストがクリップボードにコピーされました。
copyLinkText
ご不明な点がございましたら、お気軽にお問い合わせください。 dev-support@now.gg