こんにちは、スマブラにハマっている蔵谷です。最近kubernetesばかりで飽きてきたので、本日はFlutterについて書きたいと思います。

Flutterとは

Googleが開発したiOSとAndroidアプリを同時に作れるフレームワークです。Cordovaと違いWebViewベースではなく、ネイティブで動作するので動作が早いです。言語は、Dartです。KotlinやSwiftがわかる人は取っ付き易いのではないでしょうか。

なぜFlutter?

こんな記事を見つけ、着々とFuchsia移行計画が進んでるんだなと思ったからです。たとえ移行しなくても、AndroidとiOSを同時に開発できるので工数削減とか見込めそうです。

https://www.gizmodo.jp/2018/07/fuchsia-5years.html https://japanese.engadget.com/2018/11/25/google-os-fuchsia-kirin-970-honor-play/

開発環境

他のブログでも結構紹介されているので、ここは手短に。
  1. Flutter SDKを公式からダウンロードする。
  2. zipを解凍して、flutter/binにパスを通す。
  3. flutter doctorコマンドを実行すると、Android Studioやxcodeが入っていない等言われるのでインストールする。
以上!簡単ですね。

簡単なアプリを作ってみる

今回は、テキストボックスに入力してボタンを押すと、ListViewに表示されるアプリを作ってみましょう。
まず、Android Studioで新規Flutterプロジェクトを作ります。すると以下のようなディレクリ構成になるはずです。基本libの下で開発していきます。
以下がソースコードです。 Flutterでアプリ作る際に重要な概念として、StatelessWidgetとStatefulWidgetというものがあります。変化しないWidgetはStatelessWidget、場合によって変化するWidgetはStatefulWidgetを継承するようにします。 あと、レイアウトファイルというものが存在しないので、プログラム上でwidgetを追加して組み立てていくことになります。

今後について

ビーコンを取り扱うFlutterプラグインが少ないので、作ってみようかと思います。できたら、ここで公開します。お楽しみに!