はじめに
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アプリ→設定をクリックします。
すると、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はいいぞ