トレーニング
ラーニング パス
FastTrack サービス、データ管理などを使用して、財務と運用アプリの実装を成功させるためのプロジェクト方法論を計画および設計します。
認定資格
Microsoft Certified: Azure Virtual Desktop Specialty - Certifications
Microsoft Azure で任意のデバイスの仮想デスクトップ エクスペリエンスとリモート アプリを計画、配信、管理、監視します。
このブラウザーはサポートされなくなりました。
Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。
Android™️ 用 Windows サブシステムを使用すると、Amazon Appstore で入手できる Android アプリケーションを Windows 11 デバイスで実行できます。 Android は Google LLC の商標です。 このガイドは、Windows デスクトップ デバイスを対象とし、Windows オペレーティング システム用に最適化することに関心のある開発者向けに書かれています。
重要
マイクロソフト社は、Windows Subsystem for Android™️(WSA)のサポートを終了する。 その結果、Windows上のAmazon Appstore、およびWSAに依存するすべてのアプリケーションとゲームは、 2025年3月5日よりサポートされなくなります。. それまでは、テクニカルサポートをご利用いただけます。
2024年3月5日以前にAmazon AppstoreまたはAndroidアプリをインストールしたお客様は、2025年3月5日の非推奨期限まで、これらのアプリに引き続きアクセスできます。 ご不明な点がございましたら、サポートチーム (support.microsoft.com)までお問い合わせください。.
私たちは開発者コミュニティのサポートに感謝し、経験を進化させるためにフィードバックに耳を傾けることを約束します。
Windows デスクトップ環境で Android アプリをテストするには、セットアップが少し必要です。
Microsoft Store では、次の 2 つのユーザー操作のいずれかが実行されると、Windows Subsystem for Android™️ がバックグラウンドで自動的にインストールされます:
その後、Amazon Appstore は Windows 11 の [スタート] メニューに表示され、検索で利用できるようになり、Android アプリの精選されたカタログが提供されます。 モバイル アプリの設定と機能を制御できる Windows Subsystem for Android™️ アプリも [スタート] メニューに表示されます。
注意
Amazon Appstore on Windows (Windows 11 で Android アプリを実行するために必要) は、一部の地域で利用可能です。
Windows Subsystem for Android™️ の設定を変更するには: スタート > すべてのアプリ > Windows Subsystem for Android™️ に移動します。 特定の設定アプリ機能の詳細については、「Windows でモバイル アプリの設定を管理する」を参照してください。
Windows Subsystem for Android™️ を使用して Windows 11 デバイスでアプリをテストおよびデバッグするには、次のセットアップ手順が必要です。
最初に開発者モードを有効にする必要があります。 Android™️ 用 Windows サブシステムの設定を開きます。 開いたら、[詳細設定] で [開発者モード] を有効にします。
デバッグのために Windows Subsystem for Android™️ VM に接続するには:
Amazon Appstore を使用してインストールされた Android アプリを起動します。
次のコマンドを使用すると、adb connect を使用して接続できます (adb がインストールされている必要があります)。
adb connect 127.0.0.1:58526
Windows/Mac から同じネットワーク上の (Windows Subsystem for Android™️ がインストールされている) テスト デバイスに接続するには:
テスト デバイス (Android™用 Windows サブシステムがインストールされているデバイス)で PowerShell ウィンドウを開き、次のコマンドを実行してテスト デバイスの IP アドレスを識別します:
ipconfig
Android Studio と Android SDK がインストールされているデバッグ デバイス ターミナルを使用して (Mac/Windows)、次のコマンドを入力します。
adb connect <TEST DEVICE IP ADDRESS>:58526
<TEST DEVICE IP ADDRESS>
は、テスト デバイスからの "ipconfig" の出力で確認できます。 Android Studio からアプリを展開してデバッグすることもできます。
Android Debug Bridge (ADB) を使用して開発ワークステーションを Android デバイスに直接接続し、パッケージをインストールして変更を評価できるようにするには、Android Open Source Project のドキュメントの Android Debug Bridgeに関するページを参照してください。
アプリをインストールするには Amazon Appstore を使用する必要がありますが、Windows デバイスでの Android アプリのデバッグは、APK (Android アプリケーション パッケージ) と adb (Android Debug Bridge) を使用して行うことができます。
adb を使用して APK をデバッグするには:
上記の手順に従って、Windows Subsystem for Android™️ VM に接続します。
adb インストール コマンド adb install app-debug.apk
を使用して APK をインストールします
予想される出力:
Performing Streamed Install
Success
正常に "アプリがインストールされた" という通知が Windows 通知メニューに表示され、選択するとアプリが起動します。
Windows Subsystem for Android™️ では、Intel Bridge Technology を利用して、x86 ベースのプロセッサで Arm アプリケーションを有効にします。 Arm アプリケーションは、Arm ベースのプロセッサ上でネイティブに実行されます。 エミュレーション レイヤーでは、パフォーマンスのオーバーヘッドが発生します。最適なパフォーマンスのため、x86-64 と Arm64 両方のアーキテクチャ用のアプリケーションを送信してください。
Android アプリのコードの更新が必要になる可能性がある、考慮する必要がある固有の入力動作がいくつかあります。これらは、Amazon Appstore を介して Windows デスクトップ デバイスで実行される場合は互換性があるよう、ハンドヘルド デバイス向けに設計されています。
EditText
などの画面上の仮想キーボード入力方式 (または IME) によって処理されるテキスト入力フィールドの場合、アプリは想定どおりに動作するはずです。 (Android ドキュメントの EditText クラス)。
フレームワークによって予測できないキーストロークの場合は、アプリ自体で動作を処理する必要があります。 これがアプリに既に実装されている場合、追加の作業は必要ありません。
たとえば、一部のゲームでは、タッチ入力と共に、キーボードの w
a
s
d
キーによって促進された移動が既にサポートされている場合があります。
Windows 11 デバイス用に構築するときに、開発者がコードの更新を検討する必要があるキーボード入力を次に示します。
デスクトップ デバイスでこれらのキーボード入力シナリオを最適化する方法の詳細については、Android のドキュメントを参照してください。
開発者は、Windows デバイス用に構築するときは、次のマウス入力に関するコードの更新を検討する必要があります。
キーボード入力と同様に、マウス入力についても、公式の Android アプリ ガイドラインに従う必要があります。 これは、InputDevice
クラスと SOURCE_MOUSE
定数を組み合わせて使用することを意味します。 デスクトップ デバイスでこれらのマウス入力シナリオを最適化する方法の詳細については、Android のドキュメントを参照してください。
従来のモバイル フォーム ファクターとは異なり、Windows 11 で実行される Android アプリでは、自由にサイズ変更することができ、サイズ変更にすばやく応答する必要があり、Windows のアクションとジェスチャを使用してスナップできます。
Windows 11 では、9 インチより大きい画面については 720p 解像度 (1280x720) の最小画面要件が適用されます。
ウィンドウ サイズの縦横比が、ウィンドウが表示されるデバイスの画面サイズの間で一致していない場合、結果は Letterboxing (ウィンドウの幅が高さより大きい、つまり横に長い) または Pillarboxing (ウィンドウの幅が高さより小さい、つまり縦に長い) になることがあります。 結果として、ウィンドウを中央に配置するため、ウィンドウの端にバーが配置されます。 これらのバーは、選択されているシステム設定に応じて、淡色または濃色のテーマになる場合があります。 これは、Android アプリがスナップまたは最大化されている場合にのみ必要に応じて行われるので、Android アプリは Windows の豊富なスナップ機能を利用し、ウィンドウ モデルに統合できます。
Windows 11 デバイスで実行するように Android アプリを更新するときは、ウィンドウの管理とサイズ変更に関して、次の点も考慮する必要があります。
デスクトップ デバイスでウィンドウ サイズ変更のシナリオ用に最適化する方法の詳細については、Android ドキュメントのウィンドウ管理ガイドを参照してください。
マルチウィンドウ環境用の Android アプリケーションの開発は、アプリケーションで利用することを選択したライフサイクル イベントに影響します。 onPause
イベントをオーバーライドすると、電話やタブレットで目的の結果が得られる場合もありますが、アプリの UX を変更する場合は通常、このイベントを使用するべきではありません。
ライフサイクル イベントの詳細については、Android のドキュメントを参照してください。 多くの場合、onPause
や onUserLeaveHint
イベントではなく onStop
イベントを使用することをお勧めします。 実際、多くのマルチウィンドウ Android 実装では onUserLeaveHint
通知が配信されないため、そのイベント ハンドラーに含まれる可能性のあるビジネス クリティカルなロジックは、Windows Subsystem for Android™️ を含め、これらのプラットフォームでは呼び出されません。
Windows Subsystem for Android™️ では、 AOSP フレームワーク およびキーボード、マウス、タッチ、ペンなどのデバイスとの互換性を提供する仮想マシン (VM) を利用します。
Windows Subsystem for Android™️ を使用してアプリを実行している VM には、次の 3 つの状態が考えられます:
これらの状態間の遷移は、ユーザー アクティビティ (Android アプリの起動や操作、アプリの通知など) によってトリガーされます。 Android アプリは一時停止された後、ウィンドウが最小化されると停止されます。
Windows Subsystem for Android™️ VM のプロパティを次に示します。 将来の非互換性の原因となる可能性があるため、これらの値をハードコーディングすることは推奨されません。
プロパティ | 値 |
---|---|
Build.MANUFACTURER | Microsoft Corporation |
Build.MODEL | Android 用サブシステム (TM) |
Build.VERSION.SDK_INT | 33 |
Build.BOARD | windows |
Windows Subsystem for Android™️ では、ファイルと一般的な URI スキームの意図が、対応する Windows の既定のファイル/プロトコル ハンドラーに自動的にリダイレクトされます (複数の意図フィルターが一致する場合、ユーザーには chooser ダイアログに「Windows 既定のアプリ」オプションが表示されます)。 サポートされているファイル意図には、ACTION_VIEW、ACTION_EDIT、ACTION_SEND、および ACTION_SEND_MULTIPLE が含まれ、この意図はファイルを開く前に Windows ダウンロード フォルダーにコピーします。 サポートされている URI 意図には、http/https スキームの ACTION_VIEW と、mailto スキームの ACTION_VIEW と ACTION_SENDTO が含まれます。
Android アプリでは、カスタム URI スキームを使用して Windows アプリに手動でリダイレクトすることもできます。 意図アクションを com.microsoft.windows.LAUNCH_URI
に設定し、カスタム URI を値として指定した文字列を com.microsoft.windows.EXTRA_URI
という名前の意図に追加します。 たとえば、Android アプリ (Java) から Windows 電卓アプリを起動するには:
Intent intent = new Intent("com.microsoft.windows.LAUNCH_URI");
intent.putExtra("com.microsoft.windows.EXTRA_URI", "ms-calculator:");
try {
startActivity(intent);
} catch (ActivityNotFoundException e) {
// Not running in Windows Subsystem for Android™️ (or running on an older build that did not contain this feature).
}
Windows カーネル モード ドライバーと、中整合性レベル (IL) で実行されている Windows アプリケーションの両方で、任意の Android コンテナーと Android アプリのメモリを検査できます。 チート、マクロ、ボット、疑わしい動作に関する検出が追加される予定は、短期的にはありません。
開発者は、getSecurityLevel
のクエリを実行すると SECURITY_LEVEL_SW_SECURE_CRYPTO
を取得します。 getSecurityLevel
の詳細については、Android API のリファレンス ガイドを参照してください。
Windows Subsystem for Android™️ をアンインストールできますが、関連するすべてのアプリもアンインストールされることに注意してください。
Windows で Amazon Appstore に固有の問題が発生する場合は、次のトラブルシューティング手順を試してください。
Windows Subsystem for Android™️ Settings アプリに関連するトラブルシューティング手順、またはフィードバック Hub を使用してフィードバックを送信する手順については、Windows のモバイル アプリのトラブルシューティングと FAQ を参照してください。
Windows developer に関するフィードバック
Windows developer はオープンソース プロジェクトです。 フィードバックを提供するにはリンクを選択します。
トレーニング
ラーニング パス
FastTrack サービス、データ管理などを使用して、財務と運用アプリの実装を成功させるためのプロジェクト方法論を計画および設計します。
認定資格
Microsoft Certified: Azure Virtual Desktop Specialty - Certifications
Microsoft Azure で任意のデバイスの仮想デスクトップ エクスペリエンスとリモート アプリを計画、配信、管理、監視します。