まずは、公式セサミアプリでも基にされているSesameSDKライブラリを参考に調べて参ります。
Gradle
というオープンソースのビルドシステムが使われている(Javaのjarファイル warファイルを作成してくれる)ので、インストールしてみます。言語は非常にJava
に近いスクリプト言語であるGroovy Javaと同じ感覚でスクリプトを書けます。
$ curl -s https://get.sdkman.io | bash
こちらを実行して、
All done!
Please open a new terminal, or run the following in the existing one:
source "/Users/XXXX/.sdkman/bin/sdkman-init.sh"
Then issue the following command:
sdk help
Enjoy!!!
が表示されますので、
$ source "/Users/XXXX/.sdkman/bin/sdkman-init.sh"
Ignore insecure directories and files and continue [y] or abort compinit [n]?とでた方は、無視して実行(y
)して下さい。この警告は後に起動時に何度も呼ばれて鬱陶しい場合がありますので、ターミナルでcompaudit
し状態を確認しつつ
$ sudo chown -R $(whoami) $(brew --prefix)/*
$ chmod 755 /usr/local/share/zsh
上記コマンドを基に正常に戻してあげて下さい。そしてインストールはこちら。
$ sdk install gradle
gradle init --type java-application
してデフォルトのテンプレートで構成を勉強するとわかりやすいです。
buildscript {
apply from: 'versions.gradle'
addRepos(repositories)
dependencies {
classpath 'com.android.tools.build:gradle:4.1.2'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.4.30"
classpath "com.amazonaws:aws-android-sdk-appsync-gradle-plugin:3.1.2"
classpath 'com.google.gms:google-services:4.3.5'
}
repositories {
google()
maven {
url "https://plugins.gradle.org/m2/"
}
}
}
allprojects {
addRepos(repositories)
}
task clean(type: Delete) {
delete rootProject.buildDir
}
ビルドの手順を定義するファイルです。ビルド対象・ビルドの出力先、動作に関してのファイルになります。
###・ dependencies
ビルドする為に必要なライブラリを定義
###・ repositories
リポジトリからライブラリをダウンロード。グーグルやMavan(メイヴン)というJavaの古いプログラムを触るための管理ツール(yarnやnpmのようなもの)やgradleのプラグインが入っています。
入れなくてもいいですが、以下でインストールできます。
$ brew install maven
###・ task
task
の後にはタスク名上記では、ルートプロジェクトのbuildDirを削除する為にclean
とされています。
本来ならば、ここにsrcディレクトリがありそこを書き換えて
$ gradle compileJava
コンパイルさせたり、
$ gradle jar
jar
ファイルを作ったりしていきますが、ちょっと趣旨がずれてきているのでここまでは軽いお勉強ということで本題に入りたいと思います。
#では、Flutterの環境構築からやっていきます。
環境構築はAndroidStudioからプロジェクトを立ち上げるか
VsCodeで立ち上げるかになると思いますが、今回はVsCodeで立ち上げて見たいと思います。メリットは、起動が早いのと開発がしやすく慣れているところでしょうか。拡張機能でFlutter
やDart
を入れるのを忘れないように。
$ flutter create --org me.tepci -i objc -a java my_project
こちらのコマンドでcreateしてもらって最後はプロジェクト名です。SesameSDKなど後からディレクトリ名を変えても大丈夫です。
All done!
In order to run your application, type:
$ cd my_project
$ flutter run
Your application code is in sesame/lib/main.dart.
作成できたら、cd my_project
してflutter run
しましょう。
デバイスで確認できるようになりました。
ディレクトリの構成は以下になっています。SesameSDK
はJava
なのでFlutter環境でJavaを使用できるように設定するところから始めます。
app/build.gradle
やMainActivity.java
、lib/main.dart
を書き換えていきます。
※しばらく触れていなかったのが原因で、いつの間にかJAVA_HOMEのビルドエラーが出るようになって足止め喰っていました。環境変数の設定を行い無事に脱出できました。私はmacを扱っていますが、エラー内容がWindowsで生じるような内容のもので、取り敢えず一度Javaをアンインストールし、必要なVersionを再インストールし直しました。尚、再インストールする際に言語をjava
ではなくKotlin
にしました。