Apple Watch Series 2 単独でGPSの値が取れるか確かめてみた

# Apple Watch Series 2 単独でGPSの値が取れるか確かめてみた

## はじめに
Apple Watch Series 2 が手元に来てから約 1 ヶ月経ちました。
代わり映えしない感じは正直しますが，
だったらアプリ開発者なんだから
何か作ってその感じを変えてしまえということで
前回位置情報を表示するサンプルアプリを作ってみました。

[GitHub のリンク](https://github.com/MilanistaDev/GPSCheckerforWatch)
[【Swift 3】Apple Watchで位置情報取得して表示する](http://qiita.com/MilanistaDev/items/5121dfb8779f6a12f306)

今回 Series 2 から内蔵されるようになった GPS ですが，
Apple Watch 単独で位置情報取れるようになったのか気になって
東京メトロ大好きなので各路線乗りまくりのついでに
東京の複数都市で実際に作ったサンプルアプリを用いて
フィールドテストしてみました。

ロガー形式にすればわかりやすかったなと思いつつ書いてます。

## 位置情報について
Apple Watch 初代でも位置情報については取得可能です。
これは iPhone からのデータであって単独では取得できませんでした。
なのでランニングするのに iPhone も持って・・・という方も
多かったのではないかと思われます。

今回 Apple Watch Series 2 では，GPS が内蔵されました。
地図情報は iPhone から取得するので，単体では地図は表示できなくても
緯度・経度の値は取れることになります。
Apple Watch はあくまでも値取得の道具で，値の処理は
あくまでも iPhone 側だと思います。
この緯度経度の値を Watch Connectivity でリアルタイムに
iPhone に送ったり，Realm などに保存して後でまとめて
iPhone に送ることでロガー代わりにしたりその他色々なことに
使えたりしそうです。他にもセンサありますし，
Core Motion などと組み合わせても面白そうです。

## 位置情報取得可否について

Apple Watch 初代，Series 2 を持って実際に東京の街回りました。
そのときに気づいたことについて書きます。
下記が Apple Watch と iPhone との接続状態における
位置情報取得可否になります。

ペアリングはそれぞれ 1 対 1 で調査。
iPhone 5s : Apple Watch 初代
iPhone 7 Plus : Apple Watch Series 2

| 状態 | 　　初代　　 | Series 2 |
|:--|:--:|:--:|
| 通常ペアリング時 | ◯ | ◯ |
| iPhone の Bluetooth オフ | △ | ◯ |
| iPhone を航空機モード | ◯ | ◯ |
| Apple Watch 航空機モード | × | ◯ |

iPhone は航空機モードでも GPS 内蔵なので位置情報取れるため，
通常ペアリング時と初代，同様取得可能だった。
不思議だったのが，iPhone の Bluetooth を切ったとき。
これで初代と Series 2 で差が出ると思っていたけど，
実際は両者値が取れていた。なんか通信してるのかなぁ・・・
iPhone と離れすぎた場合は頻度が下がりました。
Apple Watch を航空機モードにすると思った通りの差が出ました。

## 精度について

これは実際の値を見たほうが早いです。
(実際は LoacationManager で設定した値によると思いますが。)
単独でということなので iPhone の方の値を取らないように，
Apple Watch を航空機モードにして計測しました。
ボタン押しても地図は表示されませんでした。(ピンは立ってた)

### 新橋
**JR新橋駅 日比谷口側 SL広場**
Lat:35.6670518643718
Lon:139.757710791434

![Shimbashi.JPG](https://qiita-image-store.s3.amazonaws.com/0/88266/002fb472-fef6-763e-f18f-a413159bff03.jpeg "Shimbashi.JPG")


### 西大井
**改札付近**
Lat:35.6015050340337
Lon:139.722026207574

![Nishioi.JPG](https://qiita-image-store.s3.amazonaws.com/0/88266/9e474062-f4dd-9142-a683-396488c93f61.jpeg "Nishioi.JPG")

### 中野
**JR中野駅北口の階段上ってサンプラザ中野をバックに**
Lat:35.706475825109
Lon:139.665121668947

![Nakano.JPG](https://qiita-image-store.s3.amazonaws.com/0/88266/7291d37f-ef5e-6111-b689-d44b96d2764d.jpeg "Nakano.JPG")

### 渋谷
**スクランブル交差点付近から109方面**
Lat:35.65929030768...
Lon:139.70014251423

![Shibuya.JPG](https://qiita-image-store.s3.amazonaws.com/0/88266/efa8c236-3760-2a3c-d857-7d3470164140.jpeg "Shibuya.JPG")

### 池袋
**JR池袋駅西口**
Lat:35.7308157882472
Lon:139.709842506711

![Ikebukuro.JPG](https://qiita-image-store.s3.amazonaws.com/0/88266/54f4ad93-2d53-8b1e-f866-53edc14ea6f1.jpeg "Ikebukuro.JPG")

### 浦安
**東京メトロ東西線浦安駅南口**
Lat:35.6655429611404
Lon:139.893211219586

![Urayasu.JPG](https://qiita-image-store.s3.amazonaws.com/0/88266/3df29598-443c-e5eb-eac7-4f8563abd711.jpeg "Urayasu.JPG")


## おまけ
航空機モードにしないとどっちも値取れていると気づく前の微妙なデータ。

### 浅草
**雷門前**
Lat:35.7110246985284
Lon:139.79627516883

![Asakusa.JPG](https://qiita-image-store.s3.amazonaws.com/0/88266/c2a5dc56-44b9-4747-fcb3-ea6441d9d85b.jpeg "Asakusa.JPG")
直射日光でも 1000 ニトの納得の見え方。


### お台場
**夕暮れ時レインボーブリッジをバックに**
Lat:35.6297958779283
Lon:139.776515930831

![Odaiba.JPG](https://qiita-image-store.s3.amazonaws.com/0/88266/823793f5-4e61-cd26-e6ad-8852072c7f12.jpeg "Odaiba.JPG")

## 結果と感想
確かに Series 2 は単独で位置情報取れていた。

```LocationManager``` の精度 ```desiredAccuracy``` を
```kCLLocationAccuracyBest``` にしていたのでかなり精度は良く感じた。

日中でもちゃんと見えるレベルの明るさ。
全部 iPhone 5s で撮ったけど iPhone 7 Plus に iOS 10.1 から
搭載のポートレートモードはこれと何が違うの？(試せばよかったなぁ)
十分背景ボケているように見えますが。

## おわりに
前回作ったサンプルアプリを使って実際に Apple Watch 単独で
位置情報が取得できるのかについて書きました。
Series 2 は単独で確かに取れていることが確認できました。
ただ初代でも iPhone が近くにあれば取れてるのが気になります。
位置情報取れるからなんなの？レベルのお話なので
何に使えるのか少し考えつつ，Apple Watch でできることを
探求し続けていきたいと思います。

ここまでご覧いただき，ありがとうございました。
iPhone の Bluetooth 切っても Apple Watch 初代で値が
取れるときがあるのがいまでもすごくモヤモヤする。

※ <u>ブログ用に執筆したものを md 化したものです。</u>