Android上でWindowsアプリを動かす！【Winlator】

# はじめに
皆さん、簡単に持ち運べてどこでも使用できる、小型のWindows機が欲しいと思ったことはありませんか？
でも、ミニノートPCとかを買うほどでもない......
そんなあなたにお勧めするアプリが、「Winlator」です！
この記事では、Winlatorの使用方法について解説したいと思います。

# Winlatorって何？
簡潔に言えば、
Winlatorは、AndroidデバイスでWindowsアプリを実行するアプリです。これは、WineとBox86/64という2つのアプリを組み合わせて作られています。

Wineは、WindowsアプリをWindowsOS以外のOSでも動かせるようにするものです。しかし、Wineはx86/x64アーキテクチャ専用なので、ARMアーキテクチャのAndroidデバイスでは直接使えません。そのため、Box86/64が必要となります。これは、x86/x64のプログラムをARMアーキテクチャに変換してくれるもので、ARMデバイス上でx86/x64のプログラムを実行できるようにしてくれます。

Winlatorでは、まずAndroid上でBox86/64を動かします。そして、Box86/64を使ってWineのプログラムをARM用に変換します。これによって、Android上でWindowsアプリを動かすことができるようになります。

↓雑な図（10分クオリティ）

![Winlatoe.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1751564/f1d196ec-040f-b162-6082-38c54fcb7e38.png)

# 導入方法
[WinlatorのGithubページ](https://github.com/brunodev85/winlator/releases)から、最新のリリースをダウンロードしてください。記事作成時点ではWinlator6.0が最新です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1751564/fd67b65d-dd2d-348b-a673-39cac2f8d245.png)

:::note
昔のバージョンではアプリインストール後にOBBイメージを配置する作業が必要でしたが、最新バージョンでは不要になりました。
:::

ファイルサイズが大きいので、ADBを導入している人はパソコンでダウンロードしてからスマホにインストールした方がいいかも。

ダウンロードしたAPKをインストールし、Winlatorを開くと権限を求められるので、許可をします。その後、勝手に必要なファイルのダウンロードを始めるので、放置してください。

![Screenshot_20240404_215921.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1751564/5c1b3a3b-1ff0-3eed-1e3e-1bdbb6f8c978.jpeg)

2分ぐらいで処理が終わると、「No items to display」と表示されます。
これでWinlatorの導入は終了です。
ちなみにこの時点でのアプリサイズが合計1.02GBで、ここからContainerを作るたびに増えていくので、空き容量に余裕があるとよさそうです。

# とりあえず起動してみる
実はまだ設定が必要なんですが、このままでも動くのでとりあえず動かしてみましょう。
右上の「+」を押すと、下のような画面が出ます。
オプションはほとんどそのままで構いませんが、下の方を横にスワイプすると出てくる「DRIVES」を選択し、Letterが「D:」、Target Pathが「/storage/emulated/0/Download」になっていることだけは確認しましょう。
![Screenshot_20240404_221054.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1751564/675ca951-936b-67b7-efd5-48fe25b79947.jpeg)

確認したら右下の「✓」を押して、しばらく待つとContainer-1が作成されます。

後は、右の「︙」からRunを選択すると、Wineのデスクトップが起動します。
![Screenshot_20240404_221649.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1751564/835b856a-f18e-2cf4-1656-5f8ffc4e08dd.jpeg)

終了するときは、起動しているエクスプローラーを閉じると「Are you sure you want to exit?」というダイアログが出るので、Yesを押せば終了できます。

ちなみに、さっきTargetPathのオプションを確認したのは、Wine上でAndroidのDownloadフォルダを見れるようにするためです。DownloadフォルダにWindowsアプリケーションを置けば、起動できるはずです。
GoogleChromeのインストーラーをダウンロードしてきたので、起動してみましょう。
![Screenshot_20240404_224649.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1751564/f9452f3a-ebda-0a7a-fa55-493dd26ea70b.jpeg)
ついでに、InternetExplorerでGoogle.co.jpを見てみましょう。
![Screenshot_20240404_230130.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1751564/cdd5a1b9-86c6-65a9-dcc8-cb0b0689e806.jpeg)

......おいしそうなお豆腐が並んでいます。(GoogleChromeはスマホが低スぺ過ぎて動きませんでした)
初期状態では日本語を表示できないようです。

# 日本語を表示できるようにする
文字化けが起こる原因......それは日本語フォントがないからです。
この章では、日本語フォントの導入方法を解説していきます。

ちなみに、Winlatorを多言語対応に改造した[Winlator Mr.J Fix57](https://foxraing.tistory.com/683)や[Winlator 6.0 by Brunodev85](https://foxraing.tistory.com/708)などありますが、オープンソースではありませんし、私の環境ではセキュリティの警告が出ましたのでお勧めしません。（そもそも公式版であっても野良ソフトを入れること自体よろしくないですが）

[Google Fonts](https://fonts.google.com/?subset=japanese) から好きな日本語フォントをダウンロードしてきます。
好きなフォントをタップして、右下の「Get font」→「Download all」でダウンロードできます。
![Screenshot_20240405_155419.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1751564/dcf506f6-1120-9d86-9675-92a753dc97f0.jpeg)

今回はNoto Sans Japaneseをダウンロードしました。
Zipファイルでダウンロードされますが、WinlatorのWine上で解凍できるので大丈夫です。

次に、WinlatorからContainerを起動し、左下の「Start」→「Programs」→「7-zip」をクリックし、7-zipを起動します。
![Screenshot_20240405_160310.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1751564/acbd6207-edbf-9469-8241-a4b3c5e67536.jpeg)

「Computer\D:\\(ダウンロードしたフォントファイル)」を選択し、その状態で左上の「Extract」を押すと、ウィンドウが出てきます。
![Screenshot_20240405_160902.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1751564/da9607fc-991f-0e46-0896-81b5adce96c7.jpeg)

一応内容を読んで、良ければ「OK」で解凍できます。
終わったら7-zipは閉じて大丈夫です。

次に、Wineにフォントファイルを認識させるために、ファイルを移動します。
エクスプローラーでDドライブを開くと、解凍されたファイルが入っているフォルダがあるはずです。それを開いてフォントファイルを一つ選択したら、左上の「Copy」を押してください。
![Screenshot_20240405_161505 (1).jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1751564/0cefd3c2-5f97-ac2a-dc47-3079a181d3d4.jpeg)

コピーできたらComputerに戻り、「C:/windows/Fonts/」に移動しそこにフォントを貼り付けます。
GoogleFontsからダウンロードできるフォントはotfなのに、フォルダの中にはもともとttfばかりはいっていて不安になるかもしれませんが、両方対応しているので安心してください。
![Screenshot_20240405_161813.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1751564/2054a2f3-759a-ba5b-60f3-feb4fceb2dc5.jpeg)

最後のステップです。Wineの設定画面から、フォントの設定を行います。
「Start」→「System Tools」→「Wine configration」でWine Configrationを開き、「Desktop Integration」を押してください。
![Screenshot_20240405_162313.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1751564/b26a4ef7-16df-ff61-4c8b-4503845ffb3a.jpeg)

Appearance枠内のItemというドロップダウンリストを選択します。
開いたリストのうち以下の項目にある物を選択し、右のFontをクリック、開いたメニューで入れたフォントを選択......という操作を行ってください。
![Screenshot_20240405_162822.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1751564/f50355ea-0389-7e12-9be2-2b4c467b8651.jpeg)

操作が必要な項目は以下です。
・Active Title Text
・Menu Text
・Message Box Text
・Tooltip Text

設定が終わったら、Applyを押し、OKでウィンドウを閉じます。
一応Winlatorを再起動してから日本語のアプリを起動してみると、文字化けが解消されているはずです。
![Screenshot_20240405_163320.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1751564/c236255d-c603-da8b-d8bf-a25175e73789.jpeg)

# おわりに
今回紹介した「Winlator」、さすがに3Dゲームなどは厳しいですがノベルゲームぐらいなら十分動作できるほど実用性があります。
皆さんもたくさんゲームを入れて、楽しいAndroidライフを送ってください。
それでは！