Xamarin.Formsでスマートウォッチアプリ開発
はじめに
本エントリーは Xamarin Advent Calendar 2017 11日目のエントリーです。
スマートウォッチアプリ開発というとAndroid Wearかwatch OSを思い浮かべ、本記事を開いた方もいらっしゃるのではないでしょうか。ですが、その両OSともにXamarin.Formsでの開発に対応していません。
以下のRoadmapにもありません。
forums.xamarin.com
そもそも、スマートウォッチアプリのようなUIが特殊で機能が限定されているものにXamarin.Formsは向かないような気もします。そんな中、Xamarin.Formsでスマートウォッチアプリが開発できる環境が誕生しました。それがTizen.NETです。 本記事ではTizen OS搭載スマートウォッチアプリを.NETで開発する環境構築方法を紹介します。
Tizen.NETについて
Tizenの.NET対応については、こちらの記事をご覧ください。
本記事執筆時点の最新バージョンはTizen 4.0 M2です。
このバージョンからWatch用のエミュレータも提供されています。
Tizen.NETの環境構築
こちらの記事にて説明があります。
前提条件
- 1.5GB以上のディスクスペース
- Visual Studio 2017:以下のオプションは必須
- .NET desktop development
- .NET Core cross-platform development
- Java Development Kit (JDK) 8
- OpenJDKは非対応
エミュレータの必要条件
Visual Studio Tools for Tizen のインストール
- 拡張機能と更新プログラムから「Tizen」をキーワードに検索
- 検索でヒットした「Visual Studio Tools for Tizen」をインストール
Tizen Baseline SDK のインストール
- ツール > Tizen > Tizen Package Manager を選択してダイアログを表示
エミュレータイメージのインストール
- ツール > Tizen > Tizen Package Managerを選択してダイアログを表示
- 4.0 WEARABLE (Preview)の行のINSTALLボタンを押下
以上で準備が整いました。
Tizen.NETアプリの作成
- Visual Studio の新規プロジェクトからVisual C# > Tizen > Cross-Platform > Blank App(Xamarin.Forms)を選択
- Project Wizardにて、Profileの項目で「Wealable(preview)」を選択
これでアプリができました。ソリューションエクスプローラーの構成は以下になります。
${ソリューション名}.Tizen.Wealable のプロジェクトを右クリックしてデバッグ > 新しいインスタンスを開始 でエミュレータが立ち上がり、アプリが起動します。
以上でXamarin.FormsでTizenOSのスマートウォッチアプリの開発環境が準備できました。
Xamarin.Forms以外でのTizenアプリ開発
Xamarin.Formsで提供されるUI部品はOSネイティブのそれと比べるとプアであることは否めません。
Tizen用アプリでXamarin.FormsよりもリッチなUIを使いたい、TizenのネイティブUIを使いたい、という要望もあるかと思います。安心してください、あるんです。
最新の開発環境ではXamarin.Formsの他にElmSharpとTizen.NUIを選択できます。
- ElmSharp
- Tizen NativeのUI FrameworkであるEFLをベースに開発したもののようです。
- Tizen.NUI (Natural User Interface)
- Tizen Nativeで用意されているAPIの.NETのラッパーです。
去年のConnect();2016で発表された際は、UI部分をXamarin.FormsでまかないNativeのUI部品は可能な限り対応する、という後ろ向きな内容でしたが、1年経った今、NativeのUI部品も充実してきました。
Windows 10 Mobileの新規機能が事実上終了した今、第3のOSとしてTizenに注目があつまっていることでしょう。
Tizen.NETの正式リリースが待ち遠しいですね。