.NET 開発基盤部会 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

  • エミュレータでデバッグできる。

詳細

種類

Android Virtual Device (AVD)

  • Googleの提供するAndroidエミュレータ
  • 参考
    • 作成する場合、AVD Manager直ではなく、
      Android Studioから作成する方法がサポート効いててやり易い。

Visual Studio Emulator for Android

  • Microsoftの提供するAndroidエミュレータ
  • Hyper-V上で動作し、Visual Studioから利用する。
  • どうなんでしょう。
  • 個人的に、ダメだと思う点
  • Hyper-V前提なので、
    VirtualBox?やHAXMと共存不可能。

BluestacksとGenymotion

  • Genymotion
    VirtualBox?で動作。
  • Bluestacks
    QEMUというプロセッサエミュレータで動作。

Ripple Emulator

  • Google Chrome上でCordovaの機能をエミュレーションする。
  • 各モバイルの画面サイズや,GPS,コンパス,モーションセンサを再現
  • 対応していないプラグインも多々ある。
  • Cordova特有のdevicereadyイベントをサポート
  • 参考
    • 第2回 エミュレータ/実機なしで動作確認─Ripple Emulatorを使ったPhoneGap?アプリ開発
      HTML5とPhoneGap?で作る,iPhone/Androidアプリ開発TIPS|gihyo.jp … 技術評論社
      http://gihyo.jp/dev/serial/01/phonegap_tips/0002

ホストOSとの通信

IDEやエミュレータなど環境によって様々

  • 10.0.2.2や、169.254.80.80などが利用される。
    (詳細不明だが、port指定ができないようなのでlocal loopbackでないもよう)
  • 上記のアドレスは、localhost(127.0.0.1)ではないので、
    ASP.NETのホスト・プロセスの切り替え or 設定変更が必要になる。
  • IIS Express ---> IISホストへ変更するか、
  • 設定で、IIS Expressを外部アクセス可能にしておく。

Android Studio環境

10.0.2.2 が使われる模様(AVD起動中に以下のShellで設定されているもよう)。

AVD_LOCAL_IP="10.0.2.2"

Visual Studio環境

  • 基本的に169.254.80.80 が使用される模様。
  • AVDから構成したエミュレータを使用した場合は、10.0.2.2が使用される模様。

localhostの書き換え

  • Androidにもhostsファイルがあり、それを書き換えれば、
    localhostを、10.0.2.2や、169.254.80.80に変更可能。
  • 書き換えツールは、Android\android-sdk\toolsにある。
    SDK ManagerからSDKをインストール、インストール・パスを確認し使用可能。

参考

インターネット接続

Android Virtual Device (AVD)

  • 既定で接続された(されない時もあった)。
  • その際、ホスト側で名前解決できている範囲は、
    エミュレータ側でも名前解決できるもよう。
  • 接続されない時は、優先DNSに「8.8.8.8」を設定したら解決。

Visual Studio Emulator for Android

Hyper-Vを使用したVS EmulatorでWiFi?(iphoneデザリング)を使う場合に上手く行っていない。

プロキシ設定

エミュレータ内の設定

エミュレーター外の設定

  • プロキシ認証に対応していないアプリケーションがある場合は、
    Windows側にHttpProxyAuth?などのツールを使用して認証を通す。
  • そもそもスマホはプロキシ環境下で使用しないので、
    HttpProxyAuth?などのローカル・プロキシ・ツールを使用したほうが良い。
  • HttpProxyAuth?などのローカル・プロキシ・ツールを使用する場合、
    エミュレータのAPN ( Access Point Name ) 設定に、
    ローカル・ループバック・アドレス(127.0.0.1 or localhost)を指定できないので、
    ホストPCのNICのアドレスをプロキシ(のアドレス)として指定するようにする。

アプリケーション・コンポーネント毎の設定

  • Chromeなどはプロキシさえ設定すれば、プロキシ認証のダイアログが表示される。
  • GoogleMap?はプロキシ認証は通ららないもよう。ローカルプロキシツールでクリア。
  • WebViewなどでプロキシ認証を通す方法

Hyper-Vを一時的に無効化する。

Docker for WindowsでHyper-Vを使ってしまう。

参考

AVDエミュレータ作成

ビルド

Android Studioを開き、任意で作成したプロジェクトのビルドを行う。
(一度ビルドを成功させておかないと、[AVD Manager]が表示されないため )

AVDを作成する。

ビルド成功後、[Tools]-[AVD Manager]でCreate Virtual Deviceをクリックし、AVDを作成する。
(AVD Managerが表示されない場合は、Android Studioを再起動する。)

ダウンロード

AVD作成プロセスの中で、APIレベルに対応するAVDをダウンロードする。

VT-X機能の有効化

必要に応じて、PCのVT-X機能を有効にする。BIOS設定から行う。

HAXMのインストール

必要に応じて、以下のいずれかの方法でHAXMをインストールする。

  • Android Studioの[AVD Manager]で作成したAVDを起動しようとすると、HAXMのインストールを求められるので、指示に従いインストールする。
  • 「C:\Users\[ユーザ]\AppData?\Local\Android\Sdk\extras\intel\Hardware_Accelerated_Execution_Manager」に格納されている「intelhaxm-android.exe」を実行し、インストールする。
    (※) 以下のエラーが出る場合は、https://stackoverflow.com/questions/47631771/emulator-process-finished-with-exit-code-1073741819-0xc0000005 の情報をもとに、AVDを修正する。
    ---------------------------------------------------------------------------------------
    Emulator: Process finished with exit code -1073741819 (0xC0000005)
    ---------------------------------------------------------------------------------------

AVDの起動

エミュレートする前にAndroid Studioから作成したAVDを起動しておく。


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2020-02-26 (水) 13:01:50 (41d)