この記事は9582 回閲覧されました。

世にはエミュレータと呼ばれる「他のアーキテクチャのコンピュータ」を、全くアーキテクチャの異なるコンピュータ上で実現するソフトウェアがあります。その多くはハードウェア自体をソフトウェアで実現して、アプリケーションを動かしてしまうというものが、広く使われています。家庭用ゲーム機であったり、ビンテージコンピュータであったり、携帯機器であったり、中にはハードウェアではなく互換性を維持する為に過去のOSの環境を模倣して、動くようにしたりと、多種多様なエミュレータがあふれています。

その内の1つが今回紹介するAndroidデバイスをエミュレーションするソフトウェアです。このアプリケーションを利用すると、PC上でAndoirdアプリを動かす事が可能になります。主な目的な、開発したプログラムのデバッグや動作チェックの為の環境なのですが、中にはAndroid資産も活用できれば面白いよねというものも出てきています。

今回は、OSXにて動作するAndroidエミュレータにて、Androidアプリを利用してみようと思います。正直な所、全般的にお薦めできるコレというのがないのですが、動かせると言えば動かせるので、それでも使いたいという人向けですね。個人的には素直にSIMフリーのグロスマやタブレット買ったほうが生産的です。

目次

概要

Androidは元々Linuxをベースに作られており、その上にJava仮想環境を搭載してアプリはそのJava仮想環境上で動かす仕組みになっています。その為、iOSよりもCPUスペックが高くないとモッサリした動きになったりするわけなのですが、利点としてCPUに依存をしにくいというのがあります。CPUがx86であろうとARMであろうと、アプリは手間なく動かす事が可能です。ということもあり、Androidエミュレータ自体はそこそこパワーを要求します。

また、エミュレータであるが故に、必ずしも100%確実にアプリが動作するわけではありません。

更にタッチパネルの動きをマウスやトラックパッドで行う事になるので、若干違和感があるでしょう(しかし、実際のAndroidデバイスもマウスが使えたりします)。キーボード入力は逆にエミュレータのほうが実機よりも楽です。仮想キーボードだとかフリック入力なんて面倒なものを使わなくて済みます。

iOSアプリはMacで動かすといっても、簡単に動かせるわけではない反面、Androidは簡単に動かせますので、OSXのアプリケーションが充実していないとしても、無償でエミュレータを利用して、実機がなくともAndroid資産を利用できるので、非常に大きな利点もあります。今回は、そんなエミュレータを4本使ってみました。

主なMac用Androidエミュレータ

Bluestacks

概要

この手のAndroidエミュレータでは最も有名で初期の頃からあるエミュレータがこのBluestacksです。現在では90万ものアプリが動作するというので驚きです。インストールして最初に色々ヘルパーアプリがインストールされます。Google Playに対応していて、適当に検索でGoogle Playで検索をクリックすると、Google Playが使えるようになっています。

※2016年4月段階で、継続使用の為には毎日妙なアプリのインストールを強要されます。月額2ドル払えば不要になりますが、実質的な有償化です。よって、あまりお薦めできません。

但し、英語アプリケーションなのでキー配置も英語のものとなるので、JISキーボードだと検索は苦労するでしょう(@マークは2のキーが@になったり)。また、そのままだと日本語入力が使えませんので、以下の手順で有効にしましょう。

日本語入力の有効化

  1. 検索にて、googleを検索するとGoogle日本語入力が出てきますので、それをインストール
  2. Google日本語入力を起動し、設定を進めます。
  3. Google日本語入力を有効にするためにチェックを入れます。注意書きはOKで読み飛ばす。
  4. その設定の隣の設定ボタンをクリック
  5. 【入力方法の選択】にて、日本語を選択
  6. 次に【ハードウェアキーボードの設定】をクリック
  7. 日本語109A配列を選択

更に無償のアプリでもなぜか最初の1回だけカード入力を求められたりするので、スキップするとインストールが出来ます。

使用した感想

screenshot_255 screenshot_256

図:メイン画面と検索画面

screenshot_257 screenshot_254

図:Google Play検索画面と3D Packmanをやってみた様子

  1. はじめから日本語UIと設定にはなっているので、とても楽です。
  2. ねこあつめはプレイできませんでした。動くのですが、グッズが置けませんでした。
  3. タッチ操作もマウスカーソルで行うので、結構難しい。ゲーム類で激しい動きのはちょっと厳しいかも。
  4. アプリケーションはBluestacksで用意されてるものはほぼ動きます。
  5. Google Playのアプリは必ずしも動くわけではないですが、かなりエミュレートがスムーズです。
  6. Google Playを使うにはGoogleアカウントが必要です。
  7. App Sync機能も使えるので、別の端末でダウンロードしておいたアプリは、同じGoogleアカウントであるならば、このエミュレータ上でも利用できます。
  8. Googleアカウントが使えるので、課金モノであったり有償アプリも購入できると思います。
  9. ベータ版当初とは異なり、かなり軽快に動作します。また再現性が高いです。
  10. Bluestacks自体のインストールや設定等は半自動なので、面倒な事が殆どありません。
  11. アプリのアンインストールやAndroid自体の設定がちょっと独特。一番上の右端にある+アイコンをクリックすると設定や、アプリケーションの管理でアプリを削除出来るようになっています。
  12. ランチャーが独特で嫌だという事であれば、GO Launcher等を入れるのも良いと思います。Android端末らしくなります。

screenshot_259

図:Microsoft OneNoteをインストールして見た

Genymotion

概要

VirtualBoxのエミュレーション機能を利用して実現してるAndroid EmulatorがこのGenymotionです。非常に軽快に動くのですが、Bluestacksと比較して手軽というわけではありません。Google Playも使えなくはないのですが、結構面倒な手順が必要です。Android資産を活用する為のエミュレータと言うよりはより、開発テストを行うためのソフトウェアという位置づけですね。VirtualBoxという高機能な仮想マシンを利用してるので再現性は高いです。

また、大きな特徴として、様々なバージョンのAndroidや機種毎の設定が用意されていて、実験する事が可能になっています。無償版の他に有償版も用意されていて、テストできる範囲がより広がっています。また、Windows / Linux / Mac OS XとBluestacks同様にクロスプラットフォームで開発されてるので、色々なマシンで動作します。

※2016年4月の段階で、Bluestacks同様、一定期日を経過すると起動できなくなりますので、お薦めできません。

Google Playのインストール手順

Bluestacksと違って、Google Play導入はちょっとしたハードルになっています。今回は、GenymotionでNexus7 – Android4.4でマシンを作成し、挑戦してみた。

  1. 作成したマシンを起動する
  2. まずは、Genymotion用のARM Translatorをダウンロードしてくる。
  3. zipファイルのまま、仮想マシンの画面にドラッグ&ドロップして、OKボタンを押して、ちょっと待つ。
  4. Successfullyのメッセージが出てきたらOKボタンを押して、一旦この仮想マシンを閉じる。
  5. 再度、仮想マシンを起動する
  6. 次にGoogle Playファイルを同じくダウンロードしてくる。Android 4.4系ならばこのファイル、5.0系ならばこのファイルをダウンロードしてくる。6.0についてはこのファイルをダウンロードしてくる。
  7. zipファイルのまま、仮想マシンの画面にドラッグ&ドロップして、OKボタンを押して、ちょっと待つ。
  8. Successfullyのメッセージが出てきたらOKボタンを押して、一旦この仮想マシンを閉じる。
  9. 再度、仮想マシンを起動する
  10. Google+がどうたらというエラーメッセージが出るのですが、YESとかOKとかで適当に進める。
  11. ここからが問題なのですが、Google Play開発者サービスが終了しましたエラーなどが続発しますが、Google Playを更新すると収まりますので、それまでOKを押して耐えて下さい。
  12. Google Playを起動し、アカウントを追加します。
  13. Google PlayよりGoogle+を検索して選択肢、Updateを掛けます。
  14. Updateが終わったら、Google+を実行します。
  15. すると、Google Play開発者サービスをアップデートしろ的なメッセージが出るので、Updateボタンを押します。
  16. コレが完了すると面倒なエラーメッセージが止まります。同時に、様々な標準アプリのダウンロードが一斉に始まります。
  17. あと、Chromeブラウザは先に入れておきましょう。

screenshot_263screenshot_261

図:仮想マシンの設定画面とARM Translatorのインストール画面

日本語化と日本語入力の有効化

ここまでは仮想マシンの中は英語UIと英語入力です。Bluestackと違って英語キーボード配列にはなっていないので、@マークなどは普通に入力できると思うのですが、いかんせん使いにくいので、日本語UIと日本語入力が出来るようにします。

  1. Androidの設定アイコン(歯車)をクリックして設定に入ります。
  2. 【Language & Input】をクリックします。
  3. 【Language】をクリックして、一番下にある「日本語」を選択します。これでまず、UIが日本語化します。
  4. 次に、元の画面に戻って、【言語と入力】に入ります。
  5. 【キーボードと入力方法】にて、「Japanese IME」を選択します。
  6. 同じエリアの【デフォルト】をクリックして、「日本語」を選択します。
  7. 同じ画面のままで、「ハードウェア」という物理キーボードの表示をOFFにします。これをOFFにしないと、いわゆる仮想キーボードが出てこないので不便です。
  8. これで日本語入力が出来るようになりました。
  9. ついでに、Google日本語入力をインストールしておくと良いでしょう。設定方法は、Bluestackの項目で書いてある内容と同じです。

screenshot_265

図:ChromeでGoogle日本語入力で検索ワード入力中

使用した感想

screenshot_260

図:仮想マシンをダウンロード中の画面

  1. 入手する為にはアカウント登録が必要なのでちょっと面倒です。もちろん利用する為にも同じアカウントでサインインが必要
  2. 利用する為には、事前にVirtualBoxがインストールされていなければなりません。但し、現時点では、最新版の5.0だとネットワークに繋がらなかったので、4.3当たりをダウンロードして下さい。
  3. 再現性はBluestackと同等かそれ以上です。
  4. 独自のGUIという訳ではないので、割りと使いやすい。
  5. VirtualBoxを使っているので、仮想HDDを直接いじることも可能である。
  6. 各Androidの仮想マシンは、作成をするとダウンロードされてくる仕組みになっている。
  7. 正直言って、利用するまでのハードルがやや高めなので、オススメしにくい。但し、再現性は高く高速で動く利点は捨てがたい。
  8. でも、ねこあつめは動かなかった。
  9. CPUのコア数やメモリ容量などがセッティング出来る。今回は4コアメモリ2GBで設定してみましたが、程よく動きました。
  10. Bluestacksと違って方向キーで操作ができるので、タッチパネルっぽい感じで操作は可能です。
  11. 別にWi-Fiをオンにせずとも、ネットワークには接続できます。

screenshot_266

図:SmartNewsをインストールしてみた

Andy

概要

Andyと呼ばれるこのエミュレータもGenymotionと同じく、VirtualBoxを利用したエミュレータで、Bluestacksと同様にGoogle Playに対応しています。Genymotionのような面倒なGoogle Playインストール作業は必要ありません。Bluestacks同様にAndroid資産を活用する事が目的のエミュレータです。Windows / Macの2つの環境向けに用意されており、VirtualBoxも同時にインストールする仕組みになっていますので、VirtualBoxが既に入ってる場合置き換えられてしまう場合があります。ちょっとその場合迷惑かもしれませんね。

基本的に日本語化と日本語入力の設定はBluestacksの場合と同じですので、そちらを参照してください。現時点では一番お薦めできるエミュレータかなと思います。

使用した感想

screenshot_267

図:独自のUIを持っているAndy

  1. ファイルサイズが500MB超という事でやたらとデカイ
  2. 1ClickSyncAccountという機能を利用すると、自分のGoogleアカウントとの連携を行いアプリの同期をしてくれる。
  3. Androidのバージョンは4.2.2
  4. 他のエミュレータと違い、OSXのフルスクリーン表示に対応してる優れもの。
  5. ウィザード形式のセットアップを備えているので、便利なのですが、Bluestacksと同様キー配列が英語ですので困ったものです。
  6. また、マウスが反応しにくい時があるので、TABキーとEnterキーで入力を進めると良いです。ESCキーで戻ります。
  7. ESファイルエクスプローラがなぜか最初から入ってる。
  8. GUIがMac OS Xのような独自のインターフェースになっている。
  9. 最初から日本語UIなので日本語入力のセットアップをしてあげれば完璧です。Google日本語入力を入れましょう。Bluestacksのケースと同じです。
  10. 位置情報が最初からONになっているので、OFFにしましょう。
  11. ねこあつめはうごかなかった。
  12. こちらも妙なアプリをインストールさせられるので、アンインストールしましょう。

Android x86版を仮想環境で使う

Androidはx86版がISOファイルでリリースされています。よって、既存のPCにインストールする事で、Androidマシンになります。そこで、VMware Fusionでこれを使ってみることにしました。結論から言えば、動くと言えば動きますが、不具合も多いです。

screenshot_424

図:Android 5.1 rc1を起動してみた。

  1. Google Playは初めからインストール済み
  2. インストールが結構面倒。Linuxのインストールと似たような感じ。
  3. 音を出すためには、vmxファイルにsound.virtualDev = “es1371″やsound.virtualDev = “hdaudio”と記述追加必要。Youtubeアプリを起動して動画閲覧はOKでした。
  4. ChromeやFirefoxはクラッシュして動かない。また、Google+は未対応でインストール不可。Dolphin BrowserはOKでした。
  5. Set Orientationなどの画面向き固定アプリを入れておかないと、画面が回転した時にマウス操作が大変なことになる。
  6. 6.0版が出ているが、GUI起動できない。
  7. Google Nowは起動できるが、アプリ一覧がスクロール出来ない。
  8. インストール後にGoogle日本語入力とハードウェアキーボードでレイアウトを109日本語キーボードにする必要あり。
  9. VMware Toolsなんて存在しないので、画面サイズなどの変更はxmlへの記述など面倒な作業があります。GRUBの起動パラメータでも可能。
  10. ネットワークはNAT接続でデフォルトで可能

Remix OSで使う

Remix OSとは、Android x86をベースに作成されてる、Android OSです。VMware Fusionにインストールして動かしてみました。インストールの手順およびGoogle Playのインストール手順はこちらのサイトが詳しいです。ここではそれ以外のポイントを説明します。

  1. Google Playは別途インストールが必要
  2. インストールが結構面倒。Linuxのインストールと似たような感じ。
  3. 最初から音は出るようになっていました。
  4. Android 6.0でばっちり動きます。
  5. VMware Toolsなどないので、画面サイズなどの変更はxmlへの記述など面倒な作業があります。GRUBの起動パラメータでも可能。
  6. ネットワーク接続はNAT接続でデフォルトで可能
  7. ねこあつめはそのままでは、動くのですが猫が見えません。開発者オプションよりGPUレンダリングを使用、4xMASSを適用、HWオーバーレイを無効にしたらバッチリ動きました。
  8. マルチウィンドウ対応です。
  9. 快適に動かすにはマシンパワーによる力技が必要かも。結構ファンが回りました。
  10. 要求スペック自体は高くないので、実機に入れて動かすのに向いています。

図:マルチウィンドウ対応で、Chromeもばっちり動きます。

図:GPUの設定をしないと、ねこあつめの猫が見えなくなります。

Xamarin Android Player

C#でiOSやAndroid向けのアプリ開発を行う開発環境を売っていたXamarinですが、Microsoftに買収された結果、Visual Studioに統合されフリーで公開されることになりました。現在開発環境とともにXamarinのAndroidエミュレーション環境が手に入ります。それがこのXamarin Android Player。別途、VirtualBoxを利用しておりインストール時にインストールされます。特徴は

  1. OpenGLが利用できるので、OpenGLを利用したゲーム類も動作する。
  2. Google Playは入っていないので、こちらのサイトこちらのサイトを参考にして別途インストールが必要。ただし、配布元はCyanogenmodの消滅に伴い、The Open GApps Projectに移行されてはいますが、こちらのgappはインストールが出来ません。gapps mmやkkで検索したりして探さないといけません。Xamarin Android PlayerのMashmallowで動作する
  3. Google Mapsを利用したアプリが使える。
  4. apkファイルをドラッグ&ドロップでインストール可能
  5. VPN経由やリモートデスクトップ接続での表示はできない。
  6. VirtualBoxを使ってるので、Windowsの場合、Hyper-Vと同居できない。
  7. Android 6.0 Mashmallowに対応。
  8. はじめから開発者向けオプションは有効になっています。
  9. 開発はすでにDeprecatedということで、公式にはGoogleのAndroid仮想デバイスを使えという事になっています。

高機能であるというので、早速インストールしてみました。起動時にまず仮想イメージのダウンロードを指定します。推奨はkitkatやlollipopだそうです(gappのインストール関係でしょう)。

図:用意されてるのは、Nexusシリーズのみ

図:動いたけれど、6.0だとapkがインストールできなかった。

Android仮想デバイスで動かす

Android仮想デバイスとは、Androidアプリ開発用に用意されてるデバッグ用の公式エミュレータです。アプリ開発の人にとってはおなじみのエミュレータですが、このエミュレータはお手軽に構築できるわけではないので、正直アプリをほいほい動かしたいという人には向いていません。現在自分もCordovaにてAndroidアプリを作成してるので、デバッグ用に使用していますが、環境を用意するのに非常に手間が掛かります。

環境を用意する方法については、CordovaでAndroidアプリを作る – 開発環境構築編のエミュレータの準備を参考にしてみてください。また、このエミュレータを動かす上で重要なポイントがあります。

  1. このエミュレータはベースがqemuを使ってるため、非常に動きがもっさりしています。
  2. 公式エミュレータだけあって、そこそこのアプリが動作します。
  3. 高速化するためには、Intel HAXMをAndroid SDKよりインストールする必要があります。
  4. Intel HAXMを入れた状態だとまろやかに動きますが、Intel VT-x対応していないマシンではHAXMはインストールできません。
  5. Google Playはインストールされていません。インストールする方法はあるようですが・・・
  6. すごく使いにくいです。
  7. ターミナルよりadb install apkファイルのパスでapkファイルを送り込んでアプリをインストールが可能です。このあたりはこちらのサイトが詳しいですよ。
  8. ちなみに、ARM系イメージを使えば、ARMのCPU向けに作られてるアプリも、x86上で動作します。このあたりはこちらのサイトが詳しいですよ。
  9. ねこあつめは試していません。
  10. 画面サイズ等はAVD Manager上で設定させます。

図:自分のアプリを入れてみた様子

ARC Welder

概要

Googleが作成してるChromeブラウザ上でAndroidアプリを動かすChromeエクステンションがこのARC Welderです。Google Chrome上で動作するので、Windows / Linux / Mac OS Xで動作します。元々は、Chromebookという激安ネット専用端末向けのアプリ拡張を目的としたもののようですが、Chrome用エクステンションとしてリリースされているので、他でもその恩恵を受けることが出来ます。

但し、まだまだバギーなもので、完璧に動作するアプリは限られています。また、apkを直接動作させるものなので、手元にAndroidアプリのapkファイルがなければなりません。よって、野良アプリではなく、Google Playで公開されているアプリを使いたい場合には、apkファイルをダウンロードしておかなければなりません。apkファイルのダウンロード方法は下の方にまとめましたので、参照して下さい。

アプリの実行方法

エクステンションを追加した後、アプリを実行する方法は以下の通りです。

  1. Chromeブラウザのブックマークバーの左端にある「アプリ」ボタンを押します。
  2. その中にあるARC Welderをクリックする
  3. Test Your Appというダイアログが出るので、Add Your Apkをクリックする
  4. 手元にあるapkファイルを指定する
  5. 縦横の指定やタブレットなのかモバイルフォンなのかを指定して、Launch Appをクリック
  6. Androidアプリが実行され、アプリに追加したapkファイルが登録されます。

screenshot_252

図:実際にアプリを動かしてみた。

使用した感想

Google+アカウントを使うだとか、ゲーム類の大半、有償アプリ等殆どが動作しません。また、動作しても、動かす度に画面がチラチラしたり、動作も遅かったりするので正直実用に耐えるシロモノじゃありません。まだまだ実験的な取り組みですね。類似品にARChon Runtime for Chromeというものがありますが、酷く手間が掛かるのでオススメできません。それでも使いたい方は、こちらのサイトが詳しいのでどうぞ。

apkファイルの入手方法

AndroidアプリはiOSアプリとは異なり、別にストアではなくても公開する事が出来る上に、それらを簡単にAndroidデバイスにインストールする事が可能です。ですので、apkファイルさえ手に入れば、Google Playが利用できないAndroidデバイスでもアプリをインストールする事が可能です。Google Play以外で普通にウェブサイト上で公開されてるアプリはそのまま、ダウンロードして、Androidデバイスに入れ、Androidデバイス上で実行すればインストールできます。

対して、Google Playでしか公開されていないものが圧倒的なので、それらはapkファイルをダウンロードする必要があります。今回のテーマのようにエミュレータで動かす為には、Google Playが使えない事も多いので、それらの入手方法をここに記述します。

  1. Google Playにて欲しいアプリを検索して、URLをコピーします。
  2. APK Downloderのサイトへ行きます。
  3. テキストボックスにそのURLを入力して、Generate download Linkのボタンを押します。
  4. すぐ下に緑色のボタンが出てくるので、クリックするとapkファイルがダウンロードされます。

screenshot_253

図:apkダウンロードしてる様子

ポイント

  • 完全に開発用のデバッグ目的で使用するものとして、EclipseのAndroid Virtual Deviceというものありますが、今回紹介したもののようなものとは完全に毛色の違うものなので、開発をしたい人は使ってみると良いと思います。
  • Windows用にはこれ以外にも数種類あります。
  • PC用仮想マシン向けとして、Android x86があり、VirtualBoxで動作するようです。しかし、実用には向かないほど重いという評判も。今回は試しませんでした。

関連リンク

Pocket
このエントリーをはてなブックマークに追加
Bookmark this on Yahoo Bookmark
Pocket