Accept DexMetadata files (.dm) for install-multiple
Allow .dm files (DexMetadata) to be passed to adb install-multiple.
Do not rename the input files based on their indices as the naming matters
for associating an .dm file to an .apk file.
Test: adb install-multiple -p com.android.cts.classloadersplitapp base.apk
split.apk split.dm
Bug: 30934496
Change-Id: I2ac39e00d64eae938124250033f79e02f3c3f9c0
(cherry picked from commit aa7753871e
)
This commit is contained in:
parent
ddcee93c01
commit
f03eebdd59
|
@ -1925,7 +1925,8 @@ static int install_multiple_app(int argc, const char** argv) {
|
|||
for (int i = argc - 1; i >= 0; i--) {
|
||||
const char* file = argv[i];
|
||||
|
||||
if (android::base::EndsWithIgnoreCase(file, ".apk")) {
|
||||
if (android::base::EndsWithIgnoreCase(file, ".apk") ||
|
||||
android::base::EndsWithIgnoreCase(file, ".dm")) {
|
||||
struct stat sb;
|
||||
if (stat(file, &sb) != -1) total_size += sb.st_size;
|
||||
first_apk = i;
|
||||
|
@ -1986,9 +1987,8 @@ static int install_multiple_app(int argc, const char** argv) {
|
|||
}
|
||||
|
||||
std::string cmd = android::base::StringPrintf(
|
||||
"%s install-write -S %" PRIu64 " %d %d_%s -",
|
||||
install_cmd.c_str(), static_cast<uint64_t>(sb.st_size), session_id, i,
|
||||
android::base::Basename(file).c_str());
|
||||
"%s install-write -S %" PRIu64 " %d %s -", install_cmd.c_str(),
|
||||
static_cast<uint64_t>(sb.st_size), session_id, android::base::Basename(file).c_str());
|
||||
|
||||
int localFd = adb_open(file, O_RDONLY);
|
||||
if (localFd < 0) {
|
||||
|
|
Loading…
Reference in New Issue