DeviceConnectの利点と欠点

DeviceConnectを使うとデバイスをWebAPIから操作できるようになり、かなり夢が広がるのですが、向き不向きはありそうです。ここではそんな利点、欠点をまとめています。

利点

WebAPIを使ってウェアラブルデバイスやガジェットを操作できる

通常、ウェアラブルデバイスやガジェットを操作するデバイスを作る場合、Bluetoothや独自プロトコルの実装が必須です。デバイスによってはSDKを提供している場合もありますが、それでもAPIを使わないと実装できません。

DeviceConnectはそうした厄介な通信部分をラッピングしてWebAPIとして提供してくれます。WebAPIであればJavaScriptからの操作も可能ということで、ごく手軽にデバイス連携アプリの開発ができるようになります。

外部デバイスからも操作できる

セキュリティ上のリスクはありますが、スマートフォンを通して外部からデバイスを操作できます。これが面白いのは使わなくなったタブレットやスマートフォンをハブとして、自宅やオフィスにある各種デバイスをデスクトップなどから操作したり、スクリプトから自動実行したりできるようになるということです。

欠点

iOSでは擬似的な動作

DeviceConnectはスマートフォンの中にWebAPIサーバを立てます。バックグラウンドでも動くためにはAndroidでないと無理でしょう。iOSではそれぞれ独自にアプリ化し、アプリがフォアグラウンドにある時のみ、動作します。

とは言え、iOSであっても動作させるJavaScriptファイルはアプリ内に限定されないので、アプリに内蔵したWebブラウザを使ってリモートにあるJavaScriptファイルを使ってデバイス連携させることができます。

プラグインの開発が必須

各種デバイスを操作するためにはプラグインの開発が必須になります。その際の仕様としてはGotAPIに沿ったものになるようです。

GotAPI | デバイスWebAPIコンソーシアムより。

なので、DeviceConnectが広まってくれれば各社がウェアラブルデバイスなどを開発する際にGotAPIに準拠したDeviceConnect用プラグインを提供するようになって、開発者はより開発しやすくなるのではないかと思います。