Windows 11のAndroidアプリ実行を試してみた

概要

Windows 11で新たに導入されたAndroid実行機能がようやく日本の一般ユーザーも使用することができるようになった。
現状ではまだプレビュー版であるが、早速導入してみた。

注意:この記事には非正規の手段でアプリをインストールする方法が掲載されていますが、予期せぬ不具合が生じたりセキュリティ上の問題を引き起こす可能性があります。リスクを認識した上で導入してください。

動作環境

HP Pavilion Aero Laptop 13-be
OS                  Windows 11 Home  22H2
CPU        AMD Ryzen 5 5600U 6コア12スレッド 2.3GHz
GPU        Radeon Graphics(内蔵)
メモリ    16GB (3200MHz,DDR4 SDRAM)
ストレージ  512GB SSD (PCIe NVMe M.2)

WSAの導入

上の記事内で説明されている通り、Windows上でAndroidを実行するにはまずMicrosoft ストアからAmazonアプリストア(プレビュー版)をインストールする必要がある。
その際、Android 用 Windows サブシステム (WSA, Windows Subsystem for Android)も同時にダウンロードされる。
これはWindowsの仮想マシン上で動くAndroidシステムであり、Androidアプリの実行環境となる。
WSAはアプリストアを含めたインストールしたAndroidアプリを実行する際に立ち上がる。そのため、アプリの起動に少し時間がかかる。
一度起動した後はウィンドウを閉じてもWSAは維持され、アプリ起動時間が短縮される。(一方で、使用後にもメモリを圧迫するという問題がある。→後述)

アプリの入れ方

セットアップが完了した後、AmazonアプリストアからAndroidアプリをインストールすることができるようになる。その際Amazonアカウントでのログインが必要である。

Windows版Amazonアプリストアはレビュー欄などがAndroid版と共通しているが同一ではなく、プレビュー版ということもありアプリのラインナップは限られている。
Amazonアプリで言えば、Kindle for AndroidやAudibleはあるが、Amazon MusicやPrime Video、Silkブラウザは存在しない。
そのため現状ではAndroidアプリ実行の恩恵は薄いだろう。
そこでAmazonアプリストアにないアプリをインストールすることにした。

WSAはAndroidそのものであるので、入手場所はどこであれインストールされていれば理論上どんなAndroidアプリも実行可能のはずである。
実際、ADBコマンドを利用すればAPK形式のパッケージからアプリをWSAにインストールすることができる。

しかし、この方法ではWindowsでADBを実行できる環境をあらかじめ構築する必要がある。
APK配信アプリやブラウザなどをインストールすれば以後はADBコマンドを入力せずとも直接インストールすることが可能だが、それでも事前準備が面倒である。

そこでWSA_Pacmanというツールを導入した。このツールによって、ADBコマンドを使わなくてもダウンロードしたAPKをインストールすることが可能となる。



注意:インターネット上に存在するAPKファイルの多くは正規の配信元やストアが提供しているものではありません。第三者が悪意あるコードを追加した可能性のあるアプリには、インストールによりセキュリティ上の問題を引き起こすリスクがあります。


GitHubのリンクからWSA-pacman-v1.3.6-installer.exeをダウンロードし、セットアップを行う。
次にAndroid用Windowsサブシステムの設定から開発者→開発者モードをオンにする。
そして、APK配信サイトなどからダウンロードしたAPKファイルをクリックすると以下のウィンドウが表示され、インストールが可能となる。

インストールのためには、①WSAが実行状態にあり、②コンピューターにADBデバッグが許可されていて、③USBデバッグがオンである必要がある。
そうでない場合は上のウィンドウのインストールボタンが黒のままで押すことができない。
解決方法は
①WSA_Pacmanを含めたAndroidアプリを起動
②WSA_Pacman起動時に表示されるウィンドウから許可
(常に許可にチェックを入れれば次回以降は省略)
③WSA設定から開発者→開発者向け設定を開き、USBデバッグをオンにする


Android用Windowsサブシステム設定から開発者向けオプションを開く

一度インストールしたアプリはスタートやデスクトップのショートカットからも起動することができる。

WSAの中身

WSA_Packmanや各ランチャーアプリからWSAの設定画面を開くとシステム情報を確認できる。
WSAのバージョンは2206.40000.15.0

WSAのバージョンはAndroid12である。
スクロール時に跳ね返りのアニメーションがあることからも窺える。
端末名はSubsytem for Androidとなっている。


メモリは6.3GBとなっている。(PC全体は16GB)

ストレージは256GBで127GBが使用中となっている。
これはWSAだけでなくWindows全体の使用ストレージを反映していると思われる。
Windows側では118GB/476GBと表示される。
118GB≒126*10^9(G)Bなので単位換算の違いが数値のズレとして表れているのだろう。

Windows設定から見たWSAのサイズはアプリが1.78GB、データが2.91GBだが、後者はインストールしたアプリデータを含むので、それを除外すれば2GB弱となる。

メモリやストレージの数値は実行デバイスに依存すると考えられる。

Nova Launcherのドロワーからカメラ、ファイル、ギャラリー、連絡先アプリがプリインストールされていることが分かる。
カメラアプリを起動するとPCのカメラが動く。

Device Info HWでハードウェア情報を確認する。

CPUはPCのものが認識されている。
GPUはSubsytem OpenGL ES Translatorとなっている。

システム情報ではAPIレベルが32と認識されていることから、WSAのAndroidバージョンは正確にはAndroid 12Lであると判断できる。

DRM InfoでWideVineの情報を確認しようとしたが、欄自体が表示されなかった。

ベンチマーク

WSAのパフォーマンスを計るためにAndroid用のベンチマークアプリを使用した。
定番はAntutuであるが、途中でテストが止まり進行停止となったので、代わりにGeekbench 5でテストを行った。
このアプリではCPUのシングルコアとマルチコアの性能をテストすることができる。
使用したバージョンは5.4.4である。

結果は、シングル306、マルチ1373で、2年前のスマホ向けエントリーSoCであるSnapdragon 662並みのスコアとなってしまった。

Android版Geekbenchのスコア

クロスプラットフォームソフトであるGeekbenchにはWindows版が存在する。そちらでもテストを行った結果、シングル1369、マルチ5384と高いスコアが出ていた。

Windows版Geekbenchのスコア

ただし、この低スコアが仮想マシン故の性能低下に依ると考えるのは早計で、各種ベンチマークスコアからRyzen 5 5600Uと同程度の性能といえるIntel Core i5-1135G7はWSA上でもシングル1109、マルチ4073という好成績を残していた。

i5-1135G7のテストには古いバージョンが使われていたことから、Geekbenchのバージョンを変更して再計測を行った。
バージョンは5.4.3でAPK形式(5.4.4はXAPK)でダウンロード

すると、シングル1187、マルチ4544と期待通りのスコアが得られた。

Android版Geekbench(バージョン5.4.3)でのスコア

一方、グラフィック性能を計るベンチマークアプリは代表的なものがどれも計測不可能であった。
Antutu→途中で止まり進行不可
Geekbench→グラフィック性能を計測するComputeベンチがタブごと消失
3DMark→「互換性が無い」表記 唯一起動したSling Shotは黒画面で停止

気になった点

動作が不安定

正規アプリであるKindleでもスクロールに引っかかりがあり、画像読み込みやページ送りにラグが目立つ。
Snapdragon600番台の端末よりスムーズさが足りていない。
突然アプリが終了する場面もある。
Amazonアプリストアの時点でスクロールの慣性がおかしい。
とはいえ、DMMブックスなど動作面で特に問題の無いアプリもあるので、デバイス(CPU)やアプリの相性もあるのかもしれない。

使用できないアプリがある

WSAはFire OSと同じようにAndroidであってもGMS(Google Mobile Service)非対応であるためGoogleのアプリの中には使えないものがある。
例えばYoutubeをインストールして起動しようとしても、一瞬黒画面のウィンドウが表示された後すぐに閉じてしまう。

それ以外でもGMSのAPIを起動や実行に必要とするアプリは使うことができない。

Google Playを導入してこれらのアプリを使用可能にする方法は存在するが、複雑な手順を経る必要がある上WSAの更新が正規にできなくなる等デメリットがあるので推奨しない。


アプリのPC操作最適化が不十分

当然と言えばそうだが、Androidアプリは主にスマホの小型画面でタッチ操作されることを想定して作られているので、PCでマウスを使って操作をしようとすると使いづらい場面が多くなる。

細かい部分で言えば、KindleやDMMブックスアプリなどの電子書籍ビューワーアプリでマウスホイールによるページ送りができないのが気になった。
Windows版はUIがAndroid版に劣っているが、この操作が可能な点だけは勝っている。
GoogleはAndroidアプリの大画面最適化に取り組んでおり、Chromebookでの操作を快適にするための実装が結果的にWindowsユーザーにも恩恵を与えることになるかもしれない。

アプリ内ブラウザが開けない

アプリ内ブラウザからページを開いてログインをするアプリで、なぜかPCのブラウザが起動してログインができないケースが起こった。
解決策を発見して無事ログインを完了している。
詳細は以下の記事で。

検証していないが他にもアプリ内ブラウザが開かないアプリが存在するかもしれない。

WSAが起動し続ける

Androidアプリのウィンドウを閉じてもWSAは起動したままであり、メモリを大量に食っている。

タスクマネージャーで確認すると、アプリが全て閉じている状態でもVmmemWSA(WSAを動かす仮想マシン)とWSAの二つでメモリを2500MBも占有している。

WSAが終了しないことで、別のAndroidアプリを開いた際にWSAの起動をスキップして起動時間を短縮するメリットはある。
しかし、普段の感覚でウィンドウを閉じればいいと考えてしまいがちなので、メモリが知らぬ間に圧迫されて動作に影響するというデメリットのほうが大きいだろう。

WSAを終了させるにはAndroid用Windowsサブシステム設定からシステムの一番下にある「Android用Windowsサブシステムを無効にします」をクリックする。
しばらくすればWSAとVmmemWSAの双方がタスクマネージャーから消える。

WSAを終了するには一番下を無効にする

もしくは、タスクマネージャーからWSAのタスクを終了するという方法もある。(VmmemWSAはWindowsシステムなので直接終了させることができない。WSAを閉じれば共に消える。)

まとめ

Amazonアプリストアで正規に入手できるアプリが限られていたり、動作が不安定だったり、Microsoftが推奨している16GBであってもChromeとWSAの同時起動でメモリ使用量が80%ほどに達するなど、現状上手く使うのが難しい。
既存のAndroidエミュレーターやGoogleが導入予定のPC上で起動するPlay Store Gamesなど、Windows上でAndroidアプリを動作させる手段が他にも存在するなかで、Windows11純正のAndroid実行システムにしかない強みを見せる必要がありそうだ。

#Windows
#Windows11
#Android
#Windows_Subsystem_for_Android
#Android用Windowsサブシステム


この記事が気に入ったらサポートをしてみませんか?