summaryrefslogtreecommitdiff
path: root/chromium/components/module_installer/android/java
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/components/module_installer/android/java')
-rw-r--r--chromium/components/module_installer/android/java/src/org/chromium/components/module_installer/engine/FakeEngine.java15
-rw-r--r--chromium/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/SplitAvailabilityLogger.java2
2 files changed, 11 insertions, 6 deletions
diff --git a/chromium/components/module_installer/android/java/src/org/chromium/components/module_installer/engine/FakeEngine.java b/chromium/components/module_installer/android/java/src/org/chromium/components/module_installer/engine/FakeEngine.java
index 52c3dae21b8..c129ce772c0 100644
--- a/chromium/components/module_installer/android/java/src/org/chromium/components/module_installer/engine/FakeEngine.java
+++ b/chromium/components/module_installer/android/java/src/org/chromium/components/module_installer/engine/FakeEngine.java
@@ -36,8 +36,8 @@ class FakeEngine extends SplitCompatEngine {
}
/**
- * Copies {MODULES_SRC_DIRECTORY_PATH}/|moduleName|.apk to the folder where SplitCompat expects
- * downloaded modules to be. Then calls SplitCompat to emulate the module.
+ * Copies {MODULES_SRC_DIRECTORY_PATH}/|package name|/|moduleName|.apk to the folder where
+ * SplitCompat expects downloaded modules to be. Then calls SplitCompat to emulate the module.
*
* We copy the module so that this works on non-rooted devices. The path SplitCompat expects
* module to be is not accessible without rooting.
@@ -65,10 +65,15 @@ class FakeEngine extends SplitCompatEngine {
// Get list of all files at path where SplitCompat looks for downloaded modules.
// May change in future releases of the Play Core SDK.
- File srcModuleDir = new File(MODULES_SRC_DIRECTORY_PATH);
+ File srcModuleDir = new File(MODULES_SRC_DIRECTORY_PATH, context.getPackageName());
if (!srcModuleDir.exists()) {
- Log.e(TAG, "Modules source directory does not exist");
- return false;
+ // As fallback, check the parent directory (this is the old behavior).
+ // TODO(huangs): Delete this fallback once catapult/.../device_utils.py is updated.
+ srcModuleDir = new File(MODULES_SRC_DIRECTORY_PATH);
+ if (!srcModuleDir.exists()) {
+ Log.e(TAG, "Modules source directory does not exist");
+ return false;
+ }
}
if (!srcModuleDir.canRead()) {
Log.e(TAG, "Cannot read modules source directory");
diff --git a/chromium/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/SplitAvailabilityLogger.java b/chromium/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/SplitAvailabilityLogger.java
index a6274fe5e85..d0b2cf84a81 100644
--- a/chromium/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/SplitAvailabilityLogger.java
+++ b/chromium/components/module_installer/android/java/src/org/chromium/components/module_installer/logger/SplitAvailabilityLogger.java
@@ -96,7 +96,7 @@ public class SplitAvailabilityLogger {
* @param moduleName The module name.
*/
public void storeRequestStart(String moduleName) {
- assert !mInstallTimesMap.containsKey(moduleName);
+ // Ignore previously failed requests (orphan keys).
boolean moduleRequested = storeModuleRequested(moduleName, ONDEMAND_REQ_PREV);
mInstallTimesMap.put(moduleName, new InstallTimes(moduleRequested));
}