概要は pfn/android-sdk-pluginでAndroidのScala開発環境を構築 を参照。
プロジェクトの作成
$ android create project --target android-16 --path ./chokinbo --package net.itsuha.chokinbo --activity MainActivity
pfn/android-sdk-plugin の設定
$ mkdir project
$ cat << END > project/plugin.sbt
resolvers += Resolver.url("scala-sbt releases", new URL(
"http://scalasbt.artifactoryonline.com/scalasbt/sbt-plugin-releases/"))(
Resolver.ivyStylePatterns)
addSbtPlugin("com.hanhuy.sbt" % "android-sdk-plugin" % "0.3.6")
END
$ cat << END > project/build.properties
sbt.version=0.11.2
END
$ cat << END > build.sbt
name := "Chokinbo"
seq(androidBuildSettings: _*)
END
build.sbtはprojectディレクトリではなく、プロジェクトルート直下なので注意。
Javaソースのみでsbtを実行し、実機にインストールできることを確認
$ sbt
> android:run
Scalaソースの追加、実行
$ rm src/net/itsuha/chokinbo/MainActivity.java
$ cat << END > src/net/itsuha/chokinbo/MainActivity.scala
package net.itsuha.chokinbo
import _root_.android.app.Activity
import _root_.android.os.Bundle
class MainActivity extends Activity {
override def onCreate(bundle: Bundle) {
super.onCreate(bundle)
setContentView(R.layout.main)
}
}
END
$ sbt
> android:run
Javaの場合と異なり、自動でProguardが実行される。