こんにちは、なりなり@narinarissuです(^ ^)
ほぼ、GARIMIN Forreathlete 235Jを買うことにしているのですが、ぜひ追加したい機能が2つあります。
(1) テニスのスコアカウンター
(2) fenix 3Jの3Dナビ相当
です。
どちらも、そのうち、既存のConnect IQアプリが対応してくるかも知れませんが、対応してくれないかもしれません。
テニスのスコアカウンターは、既にアプリがあるものの、230, 235, 630には対応していないのです。
Connect IQは、無料で、誰でも開発できる様ですし、僕自身、プログラミングが出来ないわけでもないので、チャレンジしてみようと思います。ネックは、本などの参考資料がないことと、国内のブログを調べても、始めたものの頓挫した雰囲気しか感じられないこと。
Connect IQとは?
こちらが、Connect IQ Storeです。AppleのAPP Store、GoogleのPlay Storeみたいなものです。
Connect IQのデベロッパーサイトがこちら。開発者の有料登録などは不要です。
開発には、Monkey Cという言語を用いるのですが、JavaやRuby、Pythonを知っていれば難しくないそうです。
C++と比べるとどうなのだろう?
Connect IQで出来ること
http://developer.garmin.com/connect-iq/what-you-can-build/developer.garmin.com
- ウォッチフェイス
- データフィールド
- ウィジェット
- アプリ
開発できるのは、この4種類です。
ウォッチフェイスは、その名の通り、時計モードでの画面デザインです。
データフィールドは、僕が欲しい、3Dナビを始め、GPSなどを使ってデータ取得中の画面のデザインです。
ウィジェットのイメージがわからないのですが、おそらく、時計モード時におまけ的に表示できる画面なのでしょう。
アプリは、僕が欲しいテニススコアカウンターなどのように、GPSなどを使ったデータ取得とは関係のない機能なのだと思います。
アプリには、ゲームも公開されています。
マネタイズ(収益化)
システムがマネタイズされておらず、有料アプリの配布をサポートしていなことが、アプリの拡がりの障害になっている気がしていましたが、
http://developer.garmin.com/connect-iq/monetization/developer.garmin.com
詳細よくわかりませんが、マネタイズの手段は提供されている模様です。
Prgrammer Guideを見ながら環境を整備
http://developer.garmin.com/connect-iq/programmers-guide/developer.garmin.com
プログラマーズガイドもちゃんと用意されているので、手順に沿って勧めます。
SDKのダウンロード
まずは、デベロッパーサイトからSDK(Software Development Kit)をダウンロードします。
ここでは、
・Connect IQ SDK
v1.2.9 (Last Updated: May 17, 2016)
・Mobile SDKs
iOS BLE
Android BLE/ADB
が用意されています。
BLEって何?Bluethooth Low Energyのことか。
ADBって??Android Debug Bridgeですか。Androidのデバッガーということ?
まあいい、Connect IQだけでなく、GARMINと繋ぐiOSやAndroidのアプリも作れるということなのでしょう。
Garmin Connect Mobileみたいのを、自分で作れるのかな?
SDKをダウンロードするとともに、Connect IQ developer programに、名前とメアドを登録しておきました。任意のようですが。
Windows、Macどちらでも開発できますが、僕は、Macで。
開発環境の準備
ようやく、本格的に開発環境の準備に入ります。
http://developer.garmin.com/connect-iq/programmers-guide/getting-started/developer.garmin.com
やり方は、ここに詳しく書かれているので、その通り進めます。
しかし、Macで開発などしたことのない僕は、いきなり壁にぶち当たりました
The first step for using Monkey C is to point your PATH to the Monkey C bin directory.
To add to a single local shell instance: $ export PATH = $PATH:path/to/monkeyc/bin
は?PATHを通す?
Macでそんなことを考えたことないです。
えっと、Connect IQプログラミングの準備は中断!
まずは、Macの基本的なところの勉強にたち戻ることとなりました...
先は長い(^_^;)