diff --git a/src/main/scala/AndroidInstall.scala b/src/main/scala/AndroidInstall.scala index b923667..0f0c8b3 100644 --- a/src/main/scala/AndroidInstall.scala +++ b/src/main/scala/AndroidInstall.scala @@ -190,6 +190,7 @@ object AndroidInstall { case None => (classDirectory +++ proguardInJars --- scalaInstance.libraryJar) get } }, + resourceContainingJars <<= dxInputs map (_ ** "*.jar" get), cleanApk <<= (packageApkPath) map (IO.delete(_)), @@ -198,7 +199,7 @@ object AndroidInstall { packageConfig <<= (toolsPath, packageApkPath, resourcesApkPath, classesDexPath, - nativeLibrariesPath, managedNativePath, dxInputs, resourceDirectory) map + nativeLibrariesPath, managedNativePath, resourceContainingJars, resourceDirectory) map (ApkConfig(_, _, _, _, _, _, _, _)), packageDebug <<= packageTask(true), diff --git a/src/main/scala/AndroidKeys.scala b/src/main/scala/AndroidKeys.scala index 4a9046e..e5d4703 100644 --- a/src/main/scala/AndroidKeys.scala +++ b/src/main/scala/AndroidKeys.scala @@ -126,6 +126,7 @@ object AndroidKeys { val proguard = TaskKey[Option[File]]("proguard", "Optimize class files.") val dxInputs = TaskKey[Seq[File]]("dx-inputs", "Input for dex command") val dx = TaskKey[File]("dx", "Convert class files to dex files") + val resourceContainingJars = TaskKey[Seq[File]]("resource-containing-jars") val makeAssetPath = TaskKey[Unit]("make-assest-path") diff --git a/src/main/scala/ApkBuilder.scala b/src/main/scala/ApkBuilder.scala index c1b20bf..5e0dc5f 100644 --- a/src/main/scala/ApkBuilder.scala +++ b/src/main/scala/ApkBuilder.scala @@ -10,7 +10,7 @@ case class ApkConfig( classesDexPath: File, nativeLibrariesPath: File, managedNativePath: File, - dexInputs: Seq[File], + resourceContainingJars: Seq[File], resourceDirectory: File ) @@ -47,7 +47,7 @@ class ApkBuilder(project: ApkConfig, debug: Boolean) { setDebugMode(builder, debug) addNativeLibraries(builder, project.nativeLibrariesPath, null) addNativeLibraries(builder, project.managedNativePath, null) - for (file <- project.dexInputs; if file.isFile) + for (file <- project.resourceContainingJars; if file.isFile) addResourcesFromJar(builder, file) addSourceFolder(builder, project.resourceDirectory) sealApk(builder) diff --git a/src/main/scala/PlainJavaProject.scala b/src/main/scala/PlainJavaProject.scala index dd44cea..225e37a 100644 --- a/src/main/scala/PlainJavaProject.scala +++ b/src/main/scala/PlainJavaProject.scala @@ -6,12 +6,13 @@ import AndroidKeys._ object PlainJavaProject { lazy val settings: Seq[Setting[_]] = inConfig(Android) (Seq( useProguard := false, - autoScalaLibrary in GlobalScope := false, manifestPath <<= (baseDirectory, manifestName) map((s,m) => Seq(s / m)) map (x=>x), proguardOptimizations := Seq.empty, mainResPath <<= (baseDirectory, resDirectoryName) (_ / _) map (x=>x), mainAssetsPath <<= (baseDirectory, assetsDirectoryName) (_ / _), javaSource in Compile <<= (baseDirectory) (_ / "src") ) + ) ++ Seq( + autoScalaLibrary := false ) }