Upgrade to Pro — share decks privately, control downloads, hide ads and more …

FlutterでMLKitを使ってみる.pdf

5f87baea675b55c93bc0246a847dad79?s=47 sayurikunugi
August 28, 2018
950

 FlutterでMLKitを使ってみる.pdf

flutterでFirebase MLKitを使ってみる

5f87baea675b55c93bc0246a847dad79?s=128

sayurikunugi

August 28, 2018
Tweet

Transcript

  1. Flutterで ML Kitを使ってみる

  2. 自己紹介 • エンジニア • 会社:HealtheeOne https://healtheeone.com • Android 7年くらい • Ios/Xcodeは未経験

    • Flutterは2週間くらい…(初心者ですすみません) 簡単なOCRのモックプロジェクト作って、apk作るまでを1 週間くらいでやったので、その雑感をまとめます。
  3. Flutterを始めたきっかけ • UI/画面遷移が単純な新規アプリを、Android/IOSで作る必 要が出てきた →Flutterで作れるかも? • 前からIOS興味あったし、 • Google I/Oでも取り上げられていたし、

    どうせならモックからFlutterで作ってみよう!
  4. ML Kitとは • 画像認識システム。機械学習機能も。 https://firebase.google.com/products/ml-kit/?hl=j a 「Image Labeling」-画像に写っているものをリス トアップできる 「Text

    recognition 」 -文字を認識できる 「Face detection 」 -顔を認識する 「Barcode scanning 」 -バーコードを認識する 「Landmark detection 」 -有名な場所を認識する
  5. Flutterで ML Kit • プラグイン https://pub.dartlang.org/packages/firebase_ml_ vision  ※使った方 ⭐️ https://pub.dartlang.org/packages/mlkit

     ※official
  6. Firebaseの設定 • https://codelabs.developers.google.com/codela bs/flutter-firebase/#4 • 注意 6. Platform-specific Firebase configuration

    の手 中、 順 iOSは6まででOK   ※6.Continuing in Firebase, follow the instructions to download the config file GoogleService-Info.plist.
  7. サンプルプロジェクト紹介① https://github.com/sayurikunugi/flutter_mlkit_sample

  8. サンプルプロジェクト紹介②

  9. サンプルプロジェクト紹介③

  10. 大変だったところ① • Androidではデバッグアプリ動くんだけど、 iOSでビルドが通らない… • officialプラグインも非officialもダメ。 →githubで、両方ともissueしてみた • officialの方は「flutter doctorの結果を載せて」と返事

     ※issue時はflutter doctorの結果はマストらしい • 非officialの方は直してくれた  「 ios mlkit library has updated. I'll fix it soon! 」 • officialも更新してるので動きそう … プラグインのアップデート管理大変そう
  11. 大変だったところ② • APKのビルド https://flutter.io/android-release/ flutter build apk • apkを動かすとアプリがクラッシュ couldn't

    find "libflutter.so" • flutter build apk --release --target-platform android-arm64  →使用端末では動いた • が、別の端末でcouldn't find "libflutter.so" →つづく
  12. 大変だったところ③ • CPUが32bitの端末らしい https://github.com/flutter/flutter/issues/18494 • 3.1.3以上のAndroidStudio使う or 32bit向けにapkをbuild build.gradle defaultConfig

    { ndk{ abiFilters "armeabi-v7a" }… } flutter build apk --release --target-platform android-arm
  13. Flutter、 Dartの感想 • newはあっても無くてもどっちでもいいらしい • constがわかりにくい コンパイル時に作られるので、変数をパラメータにもったりす るとクラッシュしたり? • StatefulWidget:setState()するとbuild(onResume

    みたいな)が走って画面が再描画される • file名!=クラス名。1ファイルに何クラスあってもok • レイアウトファイルがない
  14. 最後に • 始めたばかりだけど、おもしろい • UIパーツもプラグインも充実している • Issueは積極的に • 難読化、iOS向けリリースは今後のTODO •

    これからもFlutterやってこうと思っているので、 よろしくお願いします!