既にスマートフォン Web 版を公開している場合

既にスマートフォン Web 版を公開している場合、Gadget XML の登録は特に変更がない限り必要ありません。
iOS 設定、もしくは Android 設定で Shell App Framework 選択して各種設定を行ってください。

  • 詳しくは、こちら を参照してください。
クライアントのアプリケーションを、既にリリース済みのスマートフォン Web 版に合わせてヘッダ、フッタのデザインを作成します。WebView の領域とヘッダ、フッタが重なるような場合は、ゲームの HTML 側のデザインも修正してください。
クライアント側でヘッダ、フッタは表示せずに全画面 WebView にしてしまい、HTML 側でヘッダ、フッタを構成することも可能です。
  • 詳しくは、こちら を参照してください。
  • mobage のコミュニティボタンは常時表示が必要になります。

ゲームサーバー側の対応

スマートフォン Web 版か Shell App Framework 版かの判別方法

Shell App Framework の クライアントからコンテンツをリクエストした場合は、Gadget サーバーからゲームサーバーへのリクエストにおいて、リクエストヘッダーに下記の値が追加されます。

ヘッダー名

X-MOBAGE-SHELLAPP

固定値 1

X-MOBAGE-SHELLAPP-MARKET-CODE

mobage(Mobage配信の場合)、googleplay(Google Play配信の場合)

但し、上記リクエストヘッダーは、ライフサイクルイベント、サービスタグからの戻り遷移、Payment API の callbackUrl や finishUrl へのアクセスには付与されません。
ライフサイクルイベントの addapp に関しては、リクエストパラメーターに is_mbga_shellapp が付与された場合は、Shell App Framework のクライアントからのゲームインストールであることを判別可能です。

  • 詳しくは、こちら を参照してください。

共通フッタについて

スマートフォン Web 版では、Gadget サーバーがゲーム側のHTMLの末尾に共通のフッタを挿入しますが、Shell App Framework のクライアントからのアクセスの場合は挿入されません。
代わりに、ログアウトボタンとお問い合わせフォームを配置する必要があります。ログアウトおよびお問い合わせフォームは JavaScript API で提供されています。

プロフィール画面の切り替え

スマートフォン Web 版では、mobage のアバター画像をタップした際に、People API が返す profileUrl へ遷移する実装をしている場合がありますが、Shell App Framework のクライアントからのアクセスの場合は、JavaScript API の mobage.shellapp.Service.openUserProfile(userId) をコールするように対応が必要です。

  • 詳しくは、こちら を参照してください。
バックグラウンドミュージックや、サウンドエフェクトをクライアントアプリ側に保持させて、JavaScript API から制御することができます。
  • 詳しくは、こちら を参照してください。
リモート通知機能を追加することができます。REST API にてゲームサーバー側から送信を行い、WebView 内の JavaScript API で payload の情報を取得することができます。
  • 詳しくは、こちら を参照してください。

その他外部リンクなどの調整

Shell App Framework では、セキュリティ向上の為に、Gadget サーバーを経由しない Webコンテンツは外部ブラウザにて強制的に表示する仕組みが入っております。既存のスマートフォン Web 版のアプリ内から広告などの用途で意図しない外部サイトへ遷移した場合に想定外の動きをする場合があります。
あらかじめ外部ブラウザへ逃がすためには、JavaScript API の mobage.shellapp.Device.openURLWithBrowser(url) を利用して外部ブラウザにて表示することができますので不自然な動きをする外部サイトで対応が難しい場合は利用してください。
画像等が外部ブラウザに出てしまう場合は、CSS や JavaScript などで Gadget サーバーを経由せずに画像を取得している可能性がありますので URL を修正してください。

Mobage 内への直リンクについて

Mobage 内の「公式サークル」「設定変更」「お問い合わせ」等を、アプリケーション内に直リンクとして表示することは、Shell App Framework におきましては禁止いたします。Mobage 内への直リンクを記載している場合、 Shell App Framework では動作不良を起こします。
そのため「公式サークル」「設定変更」については直リンクを非表示としていただくか、JavaScript API の mobage.shellapp.Device.openURLWithBrowser(url) を利用して外部ブラウザにて表示するよう実装変更の対応をお願いします。
また、「お問い合わせ」 につきましても JavaScript API を利用して実装変更の対応をお願いします。

アプリケーションの公開審査申請

スマートフォン Web 版の設定はそのままに、iOS 設定、または Android 設定より公開審査申請を行います。

  • 詳しくは、こちら を参照してください。
スマートフォン Web 版の設定はそのままに、iOS 設定、または Android 設定より公開を行います。
  • 詳しくは、こちら を参照してください。

更新履歴

  • 2015/11/6
    • mobage.shellappオブジェクトにて判別するサンプルと解説を削除
  • 2013/02/14
    • 「スマートフォン Web 版とゲームサーバーを分ける方法」を追記
  • 2012/12/11
    • 新規作成

PREVIOUS

アプリケーションの開発から公開まで

NEXT

開発ガイド