UNPKG

nativescript

Version:

Command-line interface for building NativeScript projects

333 lines • 12.6 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.AndroidDebugBridgeResultHandler = void 0; const os_1 = require("os"); const _ = require("lodash"); const yok_1 = require("../../yok"); class AndroidDebugBridgeResultHandler { constructor($logger, $errors) { this.$logger = $logger; this.$errors = $errors; } checkForErrors(adbResult) { const errors = []; if (adbResult) { if (_.isArray(adbResult)) { _.each(AndroidDebugBridgeResultHandler.ANDROID_DEBUG_BRIDGE_ERRORS, (error) => { if (_.indexOf(adbResult, error.name) >= 0) { errors.push(error); } }); } else { _.each(AndroidDebugBridgeResultHandler.ANDROID_DEBUG_BRIDGE_ERRORS, (error) => { if ((adbResult.stdout && adbResult.stdout.indexOf(error.name) >= 0) || (adbResult.stderr && adbResult.stderr.indexOf(error.name) >= 0)) { errors.push(error); } }); } } return errors; } handleErrors(errors, treatErrorsAsWarnings) { _.each(errors, (error) => { this.$logger.trace(`Error name: ${error.name} result code: ${error.resultCode}`); }); const errorMessages = _(errors) .map((error) => error.description) .join(os_1.EOL) .toString(); if (treatErrorsAsWarnings) { this.$logger.warn(errorMessages); } else { this.$errors.fail(errorMessages); } } } exports.AndroidDebugBridgeResultHandler = AndroidDebugBridgeResultHandler; AndroidDebugBridgeResultHandler.ANDROID_DEBUG_BRIDGE_ERRORS = [ { name: "device unauthorized", description: "The device is not authorized. Please use the --emulator flag to run the application on on an emulator", resultCode: 1, }, { name: "No space left on device", description: "No space left on device.", resultCode: 1, }, { name: "INSTALL_FAILED_ALREADY_EXISTS", description: "The package is already installed.", resultCode: -1, }, { name: "INSTALL_FAILED_INVALID_APK", description: "The package archive file is invalid.", resultCode: -2, }, { name: "INSTALL_FAILED_INVALID_URI", description: "The URI passed in is invalid.", resultCode: -3, }, { name: "INSTALL_FAILED_INSUFFICIENT_STORAGE", description: "The package manager service found that the device didn't have enough storage space to install the app.", resultCode: -4, }, { name: "INSTALL_FAILED_DUPLICATE_PACKAGE", description: "A package is already installed with the same name.", resultCode: -5, }, { name: "INSTALL_FAILED_NO_SHARED_USER", description: "The requested shared user does not exist.", resultCode: -6, }, { name: "INSTALL_FAILED_UPDATE_INCOMPATIBLE", description: "A previously installed package of the same name has a different signature than the new package (and the old package's data was not removed).", resultCode: -7, }, { name: "INSTALL_FAILED_SHARED_USER_INCOMPATIBLE", description: "The new package is requested a shared user which is already installed on the device and does not have matching signature.", resultCode: -8, }, { name: "INSTALL_FAILED_MISSING_SHARED_LIBRARY", description: "The new package uses a shared library that is not available.", resultCode: -9, }, { name: "INSTALL_FAILED_REPLACE_COULDNT_DELETE", description: "The new package uses a shared library that is not available.", resultCode: -10, }, { name: "INSTALL_FAILED_DEXOPT", description: "The new package failed while optimizing and validating its dex files, either because there was not enough storage or the validation failed.", resultCode: -11, }, { name: "INSTALL_FAILED_OLDER_SDK", description: "The new package failed because the current SDK version is older than that required by the package.", resultCode: -12, }, { name: "INSTALL_FAILED_CONFLICTING_PROVIDER", description: "The new package failed because it contains a content provider with the same authority as a provider already installed in the system.", resultCode: -13, }, { name: "INSTALL_FAILED_NEWER_SDK", description: "The new package failed because the current SDK version is newer than that required by the package.", resultCode: -14, }, { name: "INSTALL_FAILED_TEST_ONLY", description: "The new package failed because it has specified that it is a test-only package and the caller has not supplied the #INSTALL_ALLOW_TEST flag.", resultCode: -15, }, { name: "INSTALL_FAILED_CPU_ABI_INCOMPATIBLE", description: "The package being installed contains native code, but none that is compatible with the device's CPU_ABI.", resultCode: -16, }, { name: "INSTALL_FAILED_MISSING_FEATURE", description: "The new package uses a feature that is not available.", resultCode: -17, }, { name: "INSTALL_FAILED_CONTAINER_ERROR", description: "A secure container mount point couldn't be accessed on external media.", resultCode: -18, }, { name: "INSTALL_FAILED_INVALID_INSTALL_LOCATION", description: "The new package couldn't be installed in the specified install location.", resultCode: -19, }, { name: "INSTALL_FAILED_MEDIA_UNAVAILABLE", description: "The new package couldn't be installed in the specified install location because the media is not available.", resultCode: -20, }, { name: "INSTALL_FAILED_VERIFICATION_TIMEOUT", description: "The new package couldn't be installed because the verification timed out.", resultCode: -21, }, { name: "INSTALL_FAILED_VERIFICATION_FAILURE", description: "The new package couldn't be installed because the verification did not succeed.", resultCode: -22, }, { name: "INSTALL_FAILED_PACKAGE_CHANGED", description: "The package changed from what the calling program expected.", resultCode: -23, }, { name: "INSTALL_FAILED_UID_CHANGED", description: "The new package is assigned a different UID than it previously held.", resultCode: -24, }, { name: "INSTALL_FAILED_VERSION_DOWNGRADE", description: "The new package has an older version code than the currently installed package.", resultCode: -25, }, { name: "INSTALL_FAILED_PERMISSION_MODEL_DOWNGRADE", description: "The new package has target SDK low enough to not support runtime permissions.", resultCode: -26, }, { name: "INSTALL_PARSE_FAILED_NOT_APK", description: "The parser was given a path that is not a file, or does not end with the expected '.apk' extension.", resultCode: -100, }, { name: "INSTALL_PARSE_FAILED_BAD_MANIFEST", description: "The parser was unable to retrieve the AndroidManifest.xml file.", resultCode: -101, }, { name: "INSTALL_PARSE_FAILED_UNEXPECTED_EXCEPTION", description: "The parser encountered an unexpected exception.", resultCode: -102, }, { name: "INSTALL_PARSE_FAILED_NO_CERTIFICATES", description: "The parser did not find any certificates in the .apk.", resultCode: -103, }, { name: "INSTALL_PARSE_FAILED_INCONSISTENT_CERTIFICATES", description: "The parser found inconsistent certificates on the files in the .apk.", resultCode: -104, }, { name: "INSTALL_PARSE_FAILED_CERTIFICATE_ENCODING", description: "the parser encountered a CertificateEncodingException in one of the files in the .apk.", resultCode: -105, }, { name: "INSTALL_PARSE_FAILED_BAD_PACKAGE_NAME", description: "The parser encountered a bad or missing package name in the manifest.", resultCode: -106, }, { name: "INSTALL_PARSE_FAILED_BAD_SHARED_USER_ID", description: "The parser encountered a bad shared user id name in the manifest.", resultCode: -107, }, { name: "INSTALL_PARSE_FAILED_MANIFEST_MALFORMED", description: "The parser encountered some structural problem in the manifest.", resultCode: -108, }, { name: "INSTALL_PARSE_FAILED_MANIFEST_EMPTY", description: "The parser did not find any actionable tags (instrumentation or application) in the manifest.", resultCode: -109, }, { name: "INSTALL_FAILED_INTERNAL_ERROR", description: "The system failed to install the package because of system issues.", resultCode: -110, }, { name: "INSTALL_FAILED_USER_RESTRICTED", description: "The system failed to install the package because the user is restricted from installing apps.", resultCode: -111, }, { name: "INSTALL_FAILED_DUPLICATE_PERMISSION", description: "The system failed to install the package because it is attempting to define a permission that is already defined by some existing package.", resultCode: -112, }, { name: "INSTALL_FAILED_NO_MATCHING_ABIS", description: "The system failed to install the package because its packaged native code did not match any of the ABIs supported by the system.", resultCode: -113, }, { name: "NO_NATIVE_LIBRARIES ", description: "The package being processed did not contain any native code.", resultCode: -114, }, { name: "INSTALL_FAILED_ABORTED", description: "The instalation failed because it was aborted.", resultCode: -115, }, { name: "DELETE_FAILED_INTERNAL_ERROR", description: "The system failed to delete the package for an unspecified reason.", resultCode: -1, }, { name: "DELETE_FAILED_DEVICE_POLICY_MANAGER", description: "The system failed to delete the package because it is the active DevicePolicy manager.", resultCode: -2, }, { name: "DELETE_FAILED_USER_RESTRICTED", description: "The system failed to delete the package since the user is restricted.", resultCode: -3, }, { name: "DELETE_FAILED_OWNER_BLOCKED", description: "The system failed to delete the package because a profile or device owner has marked the package as uninstallable.", resultCode: -4, }, { name: "DELETE_FAILED_ABORTED", description: "The delete failed because it was aborted.", resultCode: -5, }, { name: "MOVE_FAILED_INSUFFICIENT_STORAGE", description: "The package hasn't been successfully moved by the system because of insufficient memory on specified media.", resultCode: -1, }, { name: "MOVE_FAILED_DOESNT_EXIST", description: "The specified package doesn't exist.", resultCode: -2, }, { name: "MOVE_FAILED_SYSTEM_PACKAGE", description: "The specified package cannot be moved since its a system package.", resultCode: -3, }, { name: "MOVE_FAILED_FORWARD_LOCKED", description: "The specified package cannot be moved since its forward locked.", resultCode: -4, }, { name: "MOVE_FAILED_INVALID_LOCATION", description: "The specified package cannot be moved to the specified location.", resultCode: -5, }, { name: "MOVE_FAILED_INTERNAL_ERROR", description: "The specified package cannot be moved to the specified location.", resultCode: -6, }, { name: "MOVE_FAILED_OPERATION_PENDING", description: "The specified package already has an operation pending in the PackageHandler queue.", resultCode: -7, }, ]; yok_1.injector.register("androidDebugBridgeResultHandler", AndroidDebugBridgeResultHandler); //# sourceMappingURL=android-debug-bridge-result-handler.js.map