SBTを使用するJan Berkel の Android Plugin for Scalaを拡張しようとしています。
android:install-device
既に定義されているとのような同様のアクションと設定がありますandroid:install-emulator
。それらを とと
呼びましょう。 android:dev-install-device
android:dev-install-emulator
に新しいキーを追加しましたAndroidKeys.scala
:
val devInstallDevice = TaskKey[Unit]("dev-install-device")
val devInstallEmulator = TaskKey[Unit]("dev-install-emulator")
val devStartDevice = TaskKey[Unit]("dev-start-device", "Start package on device after installation")
val devStartEmulator = TaskKey[Unit]("dev-start-emulator", "Start package on emulator after installation")
にも追加しましたAndroidLaunch.scala
:
lazy val settings: Seq[Setting[_]] =
//AndroidInstall.settings ++
AndroidFastInstall.settings ++
inConfig(Android) (Seq (
devStartDevice <<= startTask(false),
devStartEmulator <<= startTask(true),
//startDevice <<= startTask(false),
//startEmulator <<= startTask(true),
devStartDevice <<= devStartDevice dependsOn devInstallDevice,
devStartEmulator <<= devStartEmulator dependsOn devInstallEmulator
//startDevice <<= startDevice dependsOn installDevice,
//startEmulator <<= startEmulator dependsOn installEmulator
))
問題は、自分のタスクを利用可能にしたい場合、元の標準的なタスクをコメントアウトしなければならないことです。これはしたくありません。
私が見落としているものはありますか?
更新:
設定の順序を変えてみました。
の前にAndroidFastInstall
来るとAndroidInstall
、またはAndroidInstall
を呼び出しても実行されます。android:install-device
android:dev-install-device
lazy val settings: Seq[Setting[_]] =
AndroidFastInstall.settings ++
inConfig(Android) (Seq (
devStartDevice <<= devStartTask(false),
devStartEmulator <<= devStartTask(true),
devStartDevice <<= devStartDevice dependsOn devInstallDevice,
devStartEmulator <<= devStartEmulator dependsOn devInstallEmulator
))++
AndroidInstall.settings ++
inConfig(Android) (Seq (
startDevice <<= startTask(false),
startEmulator <<= startTask(true),
startDevice <<= startDevice dependsOn installDevice,
startEmulator <<= startEmulator dependsOn installEmulator
))
の前にAndroidInstall
来るとAndroidFastInstall
、またはAndroidFastInstall
を呼び出しても実行されます。 android:install-device
android:dev-install-device
lazy val settings: Seq[Setting[_]] =
AndroidInstall.settings ++
inConfig(Android) (Seq (
startDevice <<= startTask(false),
startEmulator <<= startTask(true),
startDevice <<= startDevice dependsOn installDevice,
startEmulator <<= startEmulator dependsOn installEmulator
)) ++
AndroidFastInstall.settings ++
inConfig(Android) (Seq (
devStartDevice <<= devStartTask(false),
devStartEmulator <<= devStartTask(true),
devStartDevice <<= devStartDevice dependsOn devInstallDevice,
devStartEmulator <<= devStartEmulator dependsOn devInstallEmulator
))
最後に追加されたものは、常にそれらの前のものの可視性をカバーしているようです。誰もこれに対する解決策を知っていますか?