LoginSignup
22
21

More than 5 years have passed since last update.

Chromebookで動作するAndroidアプリにadbを接続する方法

Last updated at Posted at 2016-07-05

はじめに

ChromebookでAndroidアプリが動くようになりました。2016/7月現在対応端末はAsus Chromebook flipのみですが、年内には対応端末が増えるとアナウンスされています。

ChromebookでAndroidアプリを動作させる場合、ほとんどの場合問題なく動作します。が、OSが違うということもあり、独自の対応が必要になってくる場合も増えてくると思います。

ということで、ChromebookのAndroidコンテナにadbを通す方法を調べました。

(本稿はAndroid開発とWindowsの使い方とLinuxの使い方が大体分かってる人向きです)

Chromebook flipを入手する

国内では2GBモデルが¥34000ぐらいです。ちょっとしたAndroidタブレットよりもずっと安いので皆でガンガン買いましょうw

Androidアプリが動くようにする

2016/7月現在、devチャネルで配布されているM53でしかAndroidアプリは動作しませんので、以下のリンクを参考にアップデートしてください。

https://ischool.co.jp/2016-06-18/
https://support.google.com/chromebook/answer/1086915?hl=ja

M53以降にアップデートすると、OS起動時にGoogle Playが自動的に入るのでサインインします。
サインイン出来たら、自分のアプリをインストールして動作確認しましょう。
(うまくサインイン出来ない例が報告されています)

Developerモードに切り換える

デバッグ出来るようにするためには、ChromebookをDeveloperモードに切り換える必要があります。これはつまりAndroidで言うところのBootloader Unlockなので、ここから先はメーカー保証のサポート外の行為になります。
メーカー保証が大事な方はここから先には進まないでください。

最初に上記リンク先を上から下までちゃんと読んでください。

flipをdeveloperモードに切り換えるには、以下のページを参照してください。
http://take-root.net/gadgets/chromebook-developer-mode/

Developerモードに切り換える時にPowerWash(システムの初期化)が行われるので、先にユーザーデータのバックアップは取っておきましょう。

Developerモードで何が出来るの?

ちょっと脱線。

  • OSの書き換えが出来ます(本稿では触れません)
  • ChromeOSのシェルが使えます(root権限で)
  • androidのシェルが使えます(root権限で)
  • androidアプリのサイドロード(Google Play以外のソースからのapkインストール)が出来ます

Developerモードで覚えておくこと

ctrl-alt-[=>](F2キー)でシェル画面に切り換え (VT2=virtual terminal 2と呼びます)
ctrl-alt-[<=](F1キー)でGUI画面に切り換え
Chrome上でctrl-alt-tでcrosh(シェルもどき)起動


VT2のログインアカウントは chronos / passなし または、root / test0000


androidのシェルを呼び出す。(adb shellしたような状態)

$ sudo android-sh

androidのシェルでコマンド実行。

$ sudo android-sh -c 'command line'

ChromeOS/Androidコンテナ共にroot権限が取れるので、セキュリティ的には凄くヤバイ状態です。運用には気をつけましょう。

adbのつなぎ方(公式)

以下のリンク先に書かれています。
http://www.chromium.org/chromium-os/android-apps

adbのつなぎ方(非公式)

Windowsではそのままでは使えないので、アレンジしました。
(2016/7/25追記 アップデートで手順が簡単になったので、以下公式を日本語で説明したものとなります)

(この後の記述では、特記しない場合VT2にchronosでログインした状態とします)

まず、diskへの変更を可能にします。(vt2)

$ sudo /usr/libexec/debugd/helpers/dev_features_rootfs_verification
$ sudo reboot

ここで一旦再起動されます。

次にsshを有効化します。(vt2)

$ sudo /usr/libexec/debugd/helpers/dev_features_ssh

次にAndroidコンテナでadbdを起動します。

GUI画面右下の時計パネル→設定を開き、Androidアプリ→設定をクリックします。

chromesettings.png

すると、Androidコンテナの設定アプリが開きます。
いつものように、端末情報→ビルド番号を7回叩いて開発者向けオプションを出し、USBデバッグを有効にします。

ホストPC上からadbを接続します。

C:\> adb kill-server
C:\> adb connect <ChromebookのIPアドレス>:22

(ChromebookのIPアドレスはifconfigコマンドで分かります)

adb connectでエラーが出なければOKです。

C:\> adb devices

を実行すると、Android設定アプリ上でRSAフィンガープリントの確認画面が表示されるので、チェックボックスにチェックを入れて、OKを押します。

後は普通のAndroidデバッグと同様にadbコマンドが使えるようになります。
再接続時は以下の様にします。

C:\> adb kill-server
C:\> adb connect <ChromebookのIPアドレス>:22

Chromebookに最適化してね!

デバッグ出来るようになったらこっちのものなので、一つでも多くのアプリをChromebook対応していきましょう!

最後に

Chromebookはいいぞ

22
21
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
22
21