この記事は、スマホでAIで作成したゲームをプレイしたい、ブラウザゲームをスマホアプリ化したいと考えている人向けです。
本記事を読みつつ、実際の作業を並行で行った場合、30分以上要することもあると思いますので、その点はご容赦ください。
前回、AIを使ってHTML版オセロゲームを作成してみました。しかし実際に作ってみると、次にやりたくなるのはやはりスマホ対応です。
スマホアプリ化の作業フロー、本記事の対象作業
現在のゲームの主戦場はブラウザというよりスマホですよね。
また、以下のことを考えて、スマホアプリ化を目指しました。
- スマホアプリが世に公開されるまでの手番を把握したいため
- 将来的に作成してみたいRPGもスマホをイメージしているため
- 家族や知人にゲームプレイしてもらうのにスマホがお手軽と考えたため
本記事は、プログラミング経験がない人には少し敷居が高いかもしれません。 ただあまり難しく考える必要はありません。何らかの目的のためにパソコンやスマホにアプリをインストールしたりすることありますよね? その作業が行っていると考えてください。専門用語も多少でてきますが、理解が困難な内容はないと思います。
大きな流れは下図のようになります。
①は前回の記事でオセロゲーム作成済(前回記事はこちら)となります。
本記事は②を対象としています。
TWAとは?
TWA公式情報は Trusted Web Activity(Google Developers) となります。
正直、最初は 「Webサイトをスマホアプリ化ってどういうこと?」、「TWAってなに?」 という状態でした。
TWA(Trusted Web Activity)は、 HTML・JavaScriptで作成したWebアプリやゲームを、 「Androidアプリとして動かす」 ための仕組みです。
Google公式技術の1つであり、 個人開発のブラウザゲームやPWA(Progressive Web App)を PlayStore公開したい場合によく利用されています。
スマホゲーム制作者におすすめな理由
-
HTMLゲームをAndroidアプリ化できる
普段ブラウザで動いているゲームを、Androidアプリとしてインストール可能な形へ変換できます。 -
Web技術だけで開発できる
HTML・CSS・JavaScriptベースでアプリ公開を目指せます。 -
PlayStore公開が可能(重要)
GitHub Pagesなどへ公開したWebゲームを、APK / AAB化してGoogle Playへ申請できます。 -
更新が簡単
ゲーム本体はWeb側に存在するため、軽微な修正であればアプリ再配布なしで更新可能です。
Android Studio のインストール
まずは、Androidアプリ開発に必要となるAndroid Studioをインストールします。
TWA(Trusted Web Activity)では、APK生成・実機テスト・署名作業などでAndroid Studio を利用します。
Android Studio は Google公式の開発ツールです。基本的に無料で利用できます。
以下のGoogle公式ページへアクセスします。
ページを開いたら、「Download Android Studio」 ボタンを押します。
Windows・Mac・Linux それぞれ対応版があります。
自分のOSに合ったものを選択してください。

② インストーラーを実行
ダウンロードしたインストーラーを起動します。
基本的に、「Next」→「Next」→「Install」の流れで問題ありません。
JDK(Java開発環境)の確認
次に、TWAビルドで必要になるJDK(Java Development Kit)が利用可能か確認していきます。
Android StudioにはJava環境が同梱されている場合も多いため、まずは「すでに利用可能か確認する」作業から始めます。
無理に新しいJavaをインストールする必要はありません。
確認 → 問題なければそのまま利用するという流れがおすすめです。
① コマンドプロンプトを開く
Windowsの場合は、スタートメニューから「cmd」または「コマンドプロンプト」と検索して起動します。
Windows Terminal や PowerShell でもOKです。
② Javaバージョン確認コマンドを実行
以下コマンドを入力します。
java -version
Enterキーを押してください。
③ バージョン表示されればOK
下図のような表示が出れば、Java環境は利用可能です。

または、「java version "17"」のような表示でも問題ありません。
TWA + Android Studio 環境では、Java 17 前後が利用されることが多いです。
④ エラーが出る場合
以下のようなエラーが表示された場合は、 Java環境が認識されていません。
'java' は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません。
この場合は、JDKを導入する必要があります。
⑤ Android Studio 同梱JDK の確認
Android Studioには、JDKが内蔵されている場合があります。
Android Studio を開き、以下を確認します。
「Gradle JDK」にバージョンが表示されていれば、Android Studio側ではJava利用可能です。
近年のAndroid Studioは、自動的にEmbedded JDKを利用するケースが多いです。
⑥ JDKを新規インストールする場合
Java未導入だった場合は、OpenJDK または Oracle JDK を導入します。
初心者向けには、OpenJDK系の利用がおすすめです。
代表例:
- Microsoft Build of OpenJDK
- Eclipse Temurin
- Oracle JDK
Javaのバージョンが古すぎると、 Gradleビルドエラーの原因になる場合があります。
Java 17 系を利用すると比較的安定しやすいです。
この時点では、「Javaが利用できる状態か確認できた」程度でOKです。
Node.js の導入
次は、TWA生成ツールBubblewrapを利用するために、Node.js を導入していきます。
Bubblewrap は npm(Node Package Manager)経由でインストールするため、Node.js 環境が必要になります。
Node.js は、JavaScriptをPC上で動かすための実行環境です。 Web開発系では非常によく使われています。
① Node.js 公式サイトへアクセス
まずは公式サイトへアクセスします。
トップページには複数バージョンが表示されますが、基本的にはLTS版を選択してください。
LTS(Long Term Support)は、 長期サポート版のことです。
安定性重視のため、TWA環境ではこちらがおすすめです。

② インストーラーを実行
ダウンロードしたインストーラーを起動します。
基本的に、「Next」を押して進めればOKです。特別な設定変更は不要です。
インストール途中で「Add to PATH」のような項目が表示される場合は、有効のまま進めてください。
これが無効だと、コマンドが認識されない場合があります。
③ Node.js が導入されたか確認
インストール完了後、 コマンドプロンプトを開きます。
以下コマンドを入力してください。
node -v
以下のような表示が出れば成功です。

数字部分は異なっていても問題ありません。
④ npm の確認
Node.js を導入すると、npm(Node Package Manager)も自動的に利用可能になります。
以下コマンドを入力してください。
npm -v
バージョン番号が表示されればOKです。

npm は、JavaScript系ツールをインストールするための管理ツールです。
Bubblewrap も npm 経由で導入します。
⑤ エラーが出る場合
以下のようなエラーが表示される場合があります。
'node' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。
この場合は、PATH設定が反映されていない可能性があります。
- PC再起動
- コマンドプロンプト再起動
- Node.js 再インストール
で解決するケースが多いです。
⑥ npm が古い場合(任意)
必須ではありませんが、npm を最新版へ更新することも可能です。
npm install -g npm
ただし、初心者のうちは無理に更新しなくても問題ありません。
⑦ Node.js は今後かなり使う
今回は Bubblewrap 用として利用しますが、Node.js は他のWeb開発等でも利用頻度が高いので、その点は認識しておくと良いかと思います。
Bubblewrap のインストール
Node.js の準備ができたら、次は Google公式のTWA生成ツールBubblewrapをインストールしていきます。
Bubblewrap を利用すると、WebアプリやHTMLゲームをAndroidアプリ化するためのプロジェクトを自動生成できます。 Trusted Web Activity(TWA)向けに設計されているため、個人開発でも安心して利用できます。
非公式ツールや古い解説記事では、古い build.gradle 設定が紹介されている場合があります。できるだけ Bubblewrap ベース構築がおすすめです。
TWA開発では、Bubblewrap がほぼ標準ツールとして利用されています。
① コマンドプロンプトを開く
まずは、コマンドプロンプトを起動します。
Windowsなら、スタートメニューから「cmd」と検索すればOKです。
PowerShell や Windows Terminal でも利用可能です。
② Bubblewrap をインストール
以下コマンドを入力してください。
npm install -g @bubblewrap/cli
Enterキーを押すと、インストールが開始されます。
初回は数分かかる場合があります。
npm関連メッセージが大量表示されても正常です。

③ インストール確認
インストール完了後、以下コマンドを実行します。
bubblewrap --version
バージョン番号が表示されれば成功です。
1.22.3
数字部分は異なっていても問題ありません。

④ bubblewrap コマンドが認識されない場合
以下のようなエラーが出る場合があります。
'bubblewrap' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。
この場合は、npm の PATH が反映されていない可能性があります。
- コマンドプロンプト再起動
- PC再起動
- Node.js 再インストール
で改善するケースがあります。
Windowsでは、再起動だけで解決することもかなり多いです。
⑤ npm グローバルインストールとは?
今回のコマンドでは、-gを付けています。
npm install -g @bubblewrap/cli
この「-g」は、グローバルインストールを意味します。
PC全体で bubblewrap コマンドを使えるようにする設定です。
毎回フォルダ移動せず利用できるため、TWA開発では通常こちらを使用します。
⑥ Bubblewrap でできること
Bubblewrap を使うと、以下のような作業を半自動化できます。
- TWAプロジェクト生成
- AndroidManifest 自動生成
- APK / AAB ビルド
- PlayStore向け設定
- 署名設定補助
手作業でAndroidプロジェクトを作るより、かなり簡単になります。
Androidエミュレータでの確認
TWAプロジェクト生成後は、実際にAndroid上で正常動作するか確認していきます。
Androidスマホ実機でも確認可能ですが、今回はAndroid Emulator(エミュレータ)を利用して、 PC上で動作確認を行います。
Android Emulator を利用すると、実機がなくても Androidアプリ確認が可能です。
① Android Studio を起動
まずは Android Studio を起動します。
Bubblewrapで生成したプロジェクトを「Open」から開いてください。
初回は Gradle同期が始まるため、数分程度待つ場合があります。
② Device Manager を開く
Android Studio 上部メニューから、 Device Manager を開きます。

右側にエミュレータ管理画面が表示されます。
③ 新しい仮想端末を作成
「Create Device」ボタンを押します。

端末一覧が表示されるので、好きな機種を選択します。
私は自身のスマホがPixelなので、Pixelを選択しています。

④ Android バージョンを選択
次に、Androidイメージを選択します。>基本的に、最新安定版を選べばOKです。
「Download」表示がある場合は、Androidシステムイメージ未導入です。
数GBダウンロードされる場合があり、時間を要する場合があります。完了すると下図のような画面が表示されますので、「Finish」ボタンを押下して、作成完了です。

⑤ エミュレータ起動
作成完了後、Device Manager の▶ボタンを押すと起動します。Android端末画面がPC上に表示されれば成功です。

初回起動はかなり時間がかかることがあります。

⑥ TWAアプリを実行
Android Studio 上部の▶ Run ボタンを押します。スマホ画面が表示されたら、HOMEのオセロアイコンからゲームを起動します。
正常なら、Webアプリが Androidアプリ風に起動します。

⑦ 確認しておきたいポイント
以下をチェックしておくと安心です。
- 画面サイズ崩れ
- タップ操作
- スクロール動作
特にスマホUI崩れは、PCブラウザでは気付きにくいため重要です。
⑧ よくあるエラー
エミュレータが重い
PCスペック不足や、仮想化設定が原因の場合があります。
- 不要ソフトを閉じる
- RAM割り当てを減らす
- 軽量端末を選ぶ
などで改善する場合があります。
TWAは HTTPS必須です。
http:// のままだと正常動作しません。
以上で、TWA環境構築は完了です。
FAQ
GitHub Pagesは無料ですか?
はい。HTMLサイトを無料で公開可能です。個人ゲーム制作との相性が非常に良いです。
PWAとは何ですか?
Webサイトをアプリのように扱える技術です。ホーム画面追加や全画面表示が可能になります。
初心者でも本当にできますか?
はい。私が初心者ですが、できました。
今後やりたいこと
やってみたいことがたくさんあり過ぎて困りますね。(笑)
- ③〜⑥のスマホアプリ化対応(PWA化など)
- BGM・効果音の挿入
- 広告の挿入
- GooglePlayへの登録