aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/android/ApkActionsBuilder.java
diff options
context:
space:
mode:
authorGravatar Adam Michael <ajmichael@google.com>2017-03-14 16:11:57 +0000
committerGravatar Yun Peng <pcloudy@google.com>2017-03-14 19:51:19 +0000
commitbf34ec10c021636dc3577eb1e6357f04149f9e97 (patch)
tree01490234b4f03f13c40f6a99fb67c05f84d8a541 /src/main/java/com/google/devtools/build/lib/rules/android/ApkActionsBuilder.java
parent5fa18d12d95cd945d5ca76aba45f1b797527a95b (diff)
Make mobile-install work with --use_singlejar_apkbuilder.
All .dex files to include in the APK must now either be in a zip file or be named "classes.dex". Now with test coverage! -- PiperOrigin-RevId: 150074347 MOS_MIGRATED_REVID=150074347
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/android/ApkActionsBuilder.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/android/ApkActionsBuilder.java6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/android/ApkActionsBuilder.java b/src/main/java/com/google/devtools/build/lib/rules/android/ApkActionsBuilder.java
index 7b03534760..216713fced 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/android/ApkActionsBuilder.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/android/ApkActionsBuilder.java
@@ -25,6 +25,7 @@ import com.google.devtools.build.lib.rules.java.JavaHelper;
import com.google.devtools.build.lib.rules.java.JavaToolchainProvider;
import com.google.devtools.build.lib.rules.java.Jvm;
import com.google.devtools.build.lib.util.Pair;
+import com.google.devtools.build.lib.util.Preconditions;
import com.google.devtools.build.lib.vfs.PathFragment;
import java.util.Map;
@@ -67,9 +68,12 @@ public class ApkActionsBuilder {
/**
* Sets the dex file to be included in the APK.
*
- * <p>Can be either a plain .dex or a .zip file containing dexes.
+ * <p>Can be either a plain classes.dex or a .zip file containing dexes.
*/
public ApkActionsBuilder setClassesDex(Artifact classesDex) {
+ Preconditions.checkArgument(
+ classesDex.getFilename().endsWith(".zip")
+ || classesDex.getFilename().equals("classes.dex"));
this.classesDex = classesDex;
return this;
}