Currently the server often quits before installation finishes. As a result, there is no difference in the commandline output between a successful installation and a failed one. Let adb client wait till installation fails or succeeds by parsing the output from the inc-server process. Test: $ adb install --incremental ~/Downloads/base.apk Test: Performing Incremental Install Test: Serving... Test: All files should be loaded. Notifying the device. Test: Failure [INSTALL_PARSE_FAILED_NOT_APK: Failed to parse /data/app/vmdl749343150.tmp/base.apk: Failed to load asset path /data/app/vmdl749343150.tmp/base.apk] Test: Install command complete (ms: 91 total, 0 apk prep, 91 install) BUG: b/150865433 Change-Id: Ie33505f9cc08fc6d60ad4a5d709526e7aa9a0ad1
26 lines
849 B
C++
26 lines
849 B
C++
/*
|
|
* Copyright (C) 2020 The Android Open Source Project
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
namespace incremental {
|
|
|
|
// Expecting arguments like:
|
|
// {FILE1 FILE2 ...}
|
|
// Where FILE* are files to serve.
|
|
bool serve(int connection_fd, int output_fd, int argc, const char** argv);
|
|
|
|
} // namespace incremental
|