Dartで独自のパッケージを作ってFlutterアプリから呼び出す方法
やりたいこと
Flutterで詰将棋アプリを作るときに、
と2つアプリを作りたい。
その上で肝心の局面から詰みを解析したり、手順を教えたりといったビジネスロジックを一つのパッケージにしたい。
そこで独自のpackge(tsumeshogi_solver)を作ってそれをそれぞれのFlutterアプリから呼び出す方法をまとめた。
手順
android studio
で File
、New
、New Flutter Project
の画面から Flutter package を選択する 。f[f:id:kz23szk:20191020190504p:plain]
ターミナルを開き、対象のディレクトリで 下記コマンドを打つ。
$pub publish --dry-run Missing requirements: * Your pubspec.yaml must have an "author" or "authors" field. * Your pubspec.yaml is missing a "homepage" field. Sorry, your package is missing some requirements and can't be published yet. For more information, see: https://dart.dev/tools/pub/cmd/pub-lish.
初期状態では^のようにエラーになるので言われたとおり、 pabspec.yaml
にauthorやhomepageを入れていく。
良さそうなら本番サーバにアップロードしていく。
pub publish
途中で認証するためにURLを叩けというメッセージが出るが、なぜかURLの途中で切れてしまっているのでURL全体をコピーして認証するとアップロードされる。
すっからかんのハロワ丸出しだけど一応できた。
Go言語のように手軽に公開できるわけではないけど、 右端のタブにスコアがついていてよいパッケージにするための情報をくれる。(テストやexampleを書けよとか)
結構親切なのでしたがって充実させようと思う。
自分のflutterアプリで使う
他のpackageと使い方は同じだが一応やってみる。
使うプロジェクト側のpubspec.yaml
に使用するpackgeを記述する。
flutter pub get
すると、importできるようになっている。