Android Things を Raspberry Piに導入する

Android Thingsが正式リリースされた！！
との記事を目にしたので、脊髄反射で導入まで遊んでみました。

# １．環境
手元にあった以下を使用しました。
・Android Things 1.0.0（後にダウンロード）
・Raspberry Pi 3 Model B （element版）
・Macbook Air（13-inch, Early 2015）
・macOS High Sierra 10.13.4

・SDカード（16GB）
・USBマウス、キーボード
・microUSBケーブル（Raspberry Piの電源供給用）
・HDMIケーブル
・PCモニタ（HP w2228h）

# ２．Android Thingsのセットアップ
マニュアルはこちら。
https://developer.android.com/things/

まずはプロダクトを作成するところからはじまります。
ちなみに私は当初（今もですが）全然流れが分かっていなかったので、
随所にちんぷんかんぷんになっておりますのでご了承を。

Android Things Consoleにアクセスします。
https://partner.android.com/things/console

![sc01.png](https://qiita-image-store.s3.amazonaws.com/0/177419/b8034970-ece6-b55c-64d8-35f9582f0afe.png)

初めての場合、ライセンス認証要求が来ますのでチェックをつけてCONTINUEです。

プロダクトの作成
![sc02.png](https://qiita-image-store.s3.amazonaws.com/0/177419/4275563e-68ee-9c9b-e106-e1b233f96a1a.png)

初めての場合、CREATE A PRODUCTです。

![sc03.png](https://qiita-image-store.s3.amazonaws.com/0/177419/84b41d45-1d5d-bff2-d867-7f8b237ec65b.png)

SOM typeでRaspberry Pi 3を選び、他は適当に入力します。

![sc05.png](https://qiita-image-store.s3.amazonaws.com/0/177419/26657adf-fb8d-4d0a-179b-7af52b05fd2d.png)

私の場合、何だかよく分からない「53kqbt」とかいうModelができちゃったので、改めて「RaspberryPi」というのを作成し直してみました。
ここでModelのRaspberryPiをクリックすると下記の画面に遷移します。

![sc06.png](https://qiita-image-store.s3.amazonaws.com/0/177419/6087bdb3-9174-63bd-1e3b-fc5975896f68.png)

Build Configurationを入力していきます。

![sc07.png](https://qiita-image-store.s3.amazonaws.com/0/177419/cfcbfdc7-7a97-a468-2be4-45d2e8496532.png)

名前は適当に。

![sc08.png](https://qiita-image-store.s3.amazonaws.com/0/177419/7fe90584-ceec-e50a-4dc7-7a0f45f8a4bf.png)

Android Thingsのバージョンが出てくるのですが、選びようがないのでNEXT。

![sc09.png](https://qiita-image-store.s3.amazonaws.com/0/177419/86383b81-5b1e-791c-01c8-107d73400539.png)

Google appsを色々最初から入れられるような気がしますが、とりあえずそのままNEXT。

![sc10.png](https://qiita-image-store.s3.amazonaws.com/0/177419/3b56cf0f-9f78-0453-b5b2-cca5f920a7f7.png)

こちらも同様。そのままNEXT。

![sc11.png](https://qiita-image-store.s3.amazonaws.com/0/177419/e0a51dbc-748d-fd77-0e61-8881821b4982.png)

こちらも同様。今度トライするつもりでそのままNEXT。

![sc12.png](https://qiita-image-store.s3.amazonaws.com/0/177419/5c27c745-5068-a50b-c2ea-ecb0576e8913.png)

そうすると、ビルドするパッケージングがこんな感じだよ、とサマリーが出ます。
私はここで「あぁ、途中で何か色々できたんやなー」と思いましたが、
今回はこのまま進むこととします。CREATE BUILDします。

![sc13.png](https://qiita-image-store.s3.amazonaws.com/0/177419/1b98de87-829a-e542-b390-5bbdbb76cf66.png)

しばらく待っていると、Build Configurationが完成します。
Downloadの横のリストボタンで展開して、

![sc14.png](https://qiita-image-store.s3.amazonaws.com/0/177419/7704aa15-da95-3a88-db0e-c9992376c1ed.png)

今回は"Development"を選択しました。
すると、ダウンロードパッケージを生成（しばらくかかります）して、ダウンロードが始まります。
ダウンロードが完了したら、zipファイルを解凍します。
zipファイルを解凍すると「iot_rpi3.img」というファイルが現れます。（結構大きいです）

```
~ $ diskutil list
/dev/disk3 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *15.5 GB    disk3
   1:             Windows_FAT_32 SDCARD                  15.5 GB    disk3s1

~ $ diskutil unmountDisk /dev/disk3
Unmount of all volumes on disk3 was successful
```

ディスクユーティリティでMacに挿入したSDカードをチェックして、アンマウントします。

```
~/Downloads $ sudo dd bs=1m if=iot_rpi3.img of=/dev/rdisk3 conv=sync
```

回答したファイルをddコマンドでSDカードに書き込みます。
余談ですが、ラズパイのOSを書き込む際と全く同じことをやっています。

```
4352+0 records in
4352+0 records out
4563402752 bytes transferred in 308.133463 secs (14809825 bytes/sec)
```

書き込みが完了しました。
これでAndroid Thingsのセットアップは完了です。

# ３．Raspberry Piを起動する
SDカードをRaspberry Piの端末にセットし、USBマウス・キーボード・HDMIケーブルを接続し、
microUSBケーブルで電源供給を開始します。

しばらくするとモニターに以下のように映ってきます。
（画像が荒くてすみません...）

![sc16.png](https://qiita-image-store.s3.amazonaws.com/0/177419/3880b6f8-5915-9ffd-0c30-c559d2f3e6f0.png)

無線LANの設定は"CONNECT TO NETWORK"の中で設定を行います。

![sc17.JPG](https://qiita-image-store.s3.amazonaws.com/0/177419/9526479b-3269-8585-11f3-a1d7cfe99731.jpeg)

Androidのバージョンは8.1.0ですね。

![sc18.JPG](https://qiita-image-store.s3.amazonaws.com/0/177419/4a4fb926-93c7-6db8-a74b-5b6f014d3ae9.jpeg)

I2CとかGPIOとかを見るとRaspberry Piでも見たなーって気になりますね。

![sc19.JPG](https://qiita-image-store.s3.amazonaws.com/0/177419/c65fdded-d056-a361-2533-8ac39bb805e0.jpeg)

# ４．Raspberry Piに接続、システムの終了など
事前に以下のツールをPC側に導入しておきます。
https://developer.android.com/studio/releases/platform-tools

以下のコマンドで接続が可能です。

```
~/Workspace/android-platform-tools $ ./adb connect 192.168.xx.9
* daemon not running; starting now at tcp:5037
* daemon started successfully
connected to 192.168.xx.9:5555
```

シャットダウンは"shell"を付与して。
リブートは除くそうです。

```
~/Workspace/android-platform-tools $ ./adb shell reboot -p　　（シャットダウン）

~/Workspace/android-platform-tools $ ./adb reboot -p　　　　　 （リブート）
```


# ５．その他
駆け足で導入から起動まで行いました。
慣れている方ならざっと１時間から２時間くらいで終わると思います。
ベータ版の頃に自作アプリを入れていれている方が沢山いらっしゃったので、
次は何かAndroid Thingsにリリースしてみたいと思います。
また、こんなサイトも公式（かな？）から出ているようです。
・Android Thingsであそぼう！
https://codelabs.developers.google.com/codelabs/androidthings-playground-jp/#0

＜参考サイト等＞
●GIGAZINEさん
https://gigazine.net/news/20180508-google-android-things-1/
●id:akimachoさん
http://akimacho.hatenablog.com/entry/2018/01/18/203650
●@aoinakanishiさん
https://qiita.com/aoinakanishi/items/fae26dc1ad0f16b58558