daiki0508'足跡

Androidエミュレータの紹介とroot化

f:id:daiki0508:20210426171236p:plain

最近、私のPCに入れているAndroidエミュレータが増えてきたので整理する意味でも一度まとめてみようと思い書きました。
あくまでまとめなので、エミュレータの詳しいインストール方法等は説明しません!

目次

エミュレータって何?

そもそもAndroidエミュレータって何?って方に説明すると

Androidエミュレーターとは、パソコン上に仮想のAndroid OSをインストールし、パソコンでAndroidアプリを使用できるソフトである。 Androidスマホと同様に、アプリの対応により、相応のAndroid OSが必要となる

です。

つまりWindowsMacLinuxといったPCでモバイルアプリ(某パズルゲーム)等が出来るようになるということですね。

あとはそれなりにPCのスペックを必要とする点も特徴ですね。

紹介するエミュレータ

私が今回紹介するエミュレータは3つです。
(私のPCに入っているAndroidエミュレータが3つなので)

Android Studio 標準搭載エミュレータ

f:id:daiki0508:20210404214421j:plain

まあ、アプリを制作していて、なおかつAndroidStudioで開発を行っている方なら必ず入っているIDEなので当然ですよね(笑)

必要最低スペック

あくまで必要最低スペックなので、以下のPCスペックでサクサク動くかと言われると…。
(特にメモリは8GBじゃないと動かないかも)

Microsoft® Windows® 7/8/10 (64-bit)
4 GB RAM minimum
4 GB of available disk space minimum
1280 x 800 minimum screen resolution

メリット

  • 開発の時にこまめにデバッグしたい時に便利
  • 無駄なセットアップはいらない(デフォルトでついてくるので)
  • 様々なAndroidOSを入れられる
  • 広告が無い

デメリット

  • root権限を取得できない
  • 種類の異なる多くのAndroidOSを入れていくと容量が増えていく

LDPlayer

f:id:daiki0508:20210426171538p:plain

あれ?AndroidStudioのデメリットってあまり私に関係ない?
と思った方もいるのではないでしょうか?

実はこのデメリットが結構、面倒です。
私はAndroidSecurityを勉強中ということもあり、モバイル端末内に様々なセキュリティチェックツールを入れています。

そうです。実はこのツールのほとんどは端末のroot権限を必要とします。
勿論、必要ないという方には関係ないかもしれませんが…。

そんな時に便利なのが「LDPlayer」です。

必要最低スペック

x86/x86_64プロセッサー(IntelまたはAMD CPU)
WinXP SP3 / Win7 / Win8 / Win8.1 / Win10
OpenGL 2.0的Windows DirectX 11 / Graphic驅動程式
・最低4GBのシステムメモリ (RAM)
・最低36GBのハードディスク空き容量
・CPU仮想化機能(Intel VT-x / AMD-V)はBIOSで有効にする必要があります

お気づきの方もいるかと思いますが、CPU仮想化機能(Intel VT-x / AMD-V)とある通り、WindowsHyper-Vの機能を必要とします。

よってWSL等をインストールしている方は併用できません。

メリット

  • root権限の切り替えが可能(非root化も可能)
  • 1つのOSバージョンのみなので容量は少ない

デメリット

  • Android7.1 / 5.1 しか入れられない
  • 広告がある

Genymotion

f:id:daiki0508:20210426171736p:plain

上記の「LDPlayer」のデメリットを解消するエミュレータがこちらの「Genymotion」です。
また、私の環境の場合ではfrida等のツールがAndroid7のバージョンだとクラッシュしたりしたので入れました。(後述のデメリットの点から必要な時以外はLDPlayerを使ってます)

必要最低スペック

Windows Vista以降のOS(32bit/64bitのどちらにも対応)
VT-x または AMD-V
OpenGL 2.0
ハードディスクに400MB以上の空き
RAM 2GB以上

勿論、このエミュレータIntel VT-x / AMD-Vとある通り、WindowsHyper-Vの機能を必要とします。

よってWSL等をインストールしている方は併用できません。

メリット

  • Android4.4 ~ 10.0までの幅広いバージョンを入れられる
  • root化が可能
  • 広告が無い

デメリット

  • セットアップが大変
  • VirtualBoxが必須
  • rootと非rootが切り替えられない
  • 起動直後は少し重い
  • 種類の異なる多くのAndroidOSを入れていくと容量が増えていく
  • 無料版だと機能が一部制限

エミュレータのroot化

ここからは紹介するエミュレータで紹介したエミュレータをroot化する方法についてです。

Android Studio 標準搭載エミュレータ

はい、こちらはroot化出来ないですね。

LDPlayer

まずエミュレータを起動しましょう。

f:id:daiki0508:20210426172032p:plain

起動したら上記の画像の赤く囲んでいる部分を選択してください。
LDPlayerの設定画面が開かれます。

f:id:daiki0508:20210426172105p:plain

次にその設定画面から「他の設定」をクリックします。

f:id:daiki0508:20210426172135p:plain

そうすると、赤く囲んである通り「ROOT権限」の設定の有効化、無効化の切り替えがあるので、無効になっていたら有効にしましょう。(いつでも切り替えられます)

ちなみに「ADBデバッグ」の設定も「ローカルデバッグ」にしておきましょう。
これでAndroidStudioを用いたログの取得やデバッグ、adbの使用が可能になります。

Genymotion

こちらのエミュレータ、昔は「Genymotionconfigration」というアプリがセットアップした端末内に入っていたのですが、最近では無くなったようです。

そのため、rootと非rootの切り替えは出来なくなりました。
(SuperSUを入れれば問題ないらしいが正直、面倒くさい)

しかし、切り替えが出来なくなっただけでroot化は出来ます。
その手法とは?

…はい、実はエミュレータを起動した時点でroot化されています。
なので特にすることは無いです。

まとめ

今回は私が持っているエミュレータの機能を整理するためにこの記事を書きました。
なので、詳しいセットアップの方法が知りたかったという方はごめんなさい…。

ちなみに私は3つのエミュレータを用途によって使い分けている感じですね。

また、今回記事の中で出てきた「frida」等のツールについてはまたの機会に!!

引用・参考記事

https://smartasw.com/archives/android%E3%82%A8%E3%83%9F%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%BF6%E7%A8%AE%E3%82%92%E4%B8%80%E8%A6%A7%E6%AF%94%E8%BC%83-%E7%94%A8%E9%80%94%E5%88%A5%E3%81%8A%E3%81%99%E3%81%99%E3%82%81%EF%BC%BB%E3%83%99.html

https://jp.ldplayer.net/

https://www.genymotion.com/

https://prtimes.jp/main/html/rd/p/000000013.000035043.html#:~:text=Android%E3%82%A8%E3%83%9F%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%BF%E3%83%BC%E3%81%A8%E3%81%AF%E3%80%81%E3%83%91%E3%82%BD%E3%82%B3%E3%83%B3,OS%E3%81%8C%E5%BF%85%E8%A6%81%E3%81%A8%E3%81%AA%E3%82%8B%E3%80%82

https://www.google.com/url?sa=i&url=https%3A%2F%2Fdeveloper.android.com%2Fstudio%2Frun%2Femulator%3Fhl%3Dja&psig=AOvVaw22GejVpwfoNsEqxxEfYbqt&ust=1619510955265000&source=images&cd=vfe&ved=0CAMQjB1qGAoTCPDb7Oq6m_ACFQAAAAAdAAAAABCsAQ

https://neet-rookie.hatenablog.com/entry/2019/08/20/144234