如何修复 Android Studio 中的 INSTALL_FAILED_INVALID_APK 错误?
Posted
技术标签:
【中文标题】如何修复 Android Studio 中的 INSTALL_FAILED_INVALID_APK 错误?【英文标题】:How to fix INSTALL_FAILED_INVALID_APK error in Android Studio? 【发布时间】:2020-07-02 13:32:18 【问题描述】:我最近将我的 android Studio 更新到 3.6.1,因此也将 gradle 插件更新到 3.6.1,并将 gradle 包装器更新到 5.6.4
运行调试版本时,我不断收到此错误
Install failed: The application could not be installed:
INSTALL_FAILED_INVALID_APK
The APKs are invalid.
我检查了我的包和 applicationId 并且是相同的
我尝试在清单<application>
标签上使用android:extractNativeLibs="true"
,但它仍然不起作用
继续清理和重建仍然不起作用
缓存无效,删除 .gradle、idea 和 build 文件,但仍然无法正常工作
我也在 gradle.properties 文件org.gradle.caching=false
上使用过这个,但还是不行
我检查了 idea.log 文件,它是这样说的:
2020-03-22 00:49:04,191 [4654427] INFO - ild.invoker.GradleBuildInvoker - Gradle build finished in 1 m 37 s 411 ms
2020-03-22 00:49:04,213 [4654449] INFO - ools.idea.run.tasks.DeployTask - Installing application: PACKAGE_NAME
2020-03-22 00:49:04,451 [4654687] INFO - a.run.tasks.AbstractDeployTask - 20675813ms TRC_BEG [12861][12861] : installer
2020-03-22 00:49:04,451 [4654687] INFO - a.run.tasks.AbstractDeployTask - 20675814ms TRC_BEG [12861][12861] : Command Dump
2020-03-22 00:49:04,451 [4654687] INFO - a.run.tasks.AbstractDeployTask - 20675814ms TRC_BEG [12861][12861] : get process ids
2020-03-22 00:49:04,451 [4654687] INFO - a.run.tasks.AbstractDeployTask - 20675872ms LOG_ERR [12861][12861] : Could not get package user id: /system/bin/run-as: unknown package: PACKAGE_NAME
2020-03-22 00:49:04,451 [4654687] INFO - a.run.tasks.AbstractDeployTask - 20675874ms TRC_END [12861][12861] :
2020-03-22 00:49:04,451 [4654687] INFO - a.run.tasks.AbstractDeployTask - 20675874ms TRC_BEG [12861][12861] : retrieve_apk_path
2020-03-22 00:49:04,452 [4654688] INFO - a.run.tasks.AbstractDeployTask - 20675874ms TRC_BEG [12861][12861] : apk_path_via_cmd_package_dump
2020-03-22 00:49:04,452 [4654688] INFO - a.run.tasks.AbstractDeployTask - 20675923ms TRC_END [12861][12861] :
2020-03-22 00:49:04,452 [4654688] INFO - a.run.tasks.AbstractDeployTask - 20675923ms TRC_END [12861][12861] :
2020-03-22 00:49:04,452 [4654688] INFO - a.run.tasks.AbstractDeployTask - 20675923ms LOG_ERR [12861][12861] : Could not find apks for package: PACKAGE_NAME
2020-03-22 00:49:04,452 [4654688] INFO - a.run.tasks.AbstractDeployTask - 20675923ms TRC_END [12861][12861] :
2020-03-22 00:49:04,452 [4654688] INFO - a.run.tasks.AbstractDeployTask - 20675923ms TRC_END [12861][12861] :
2020-03-22 00:49:04,452 [4654688] INFO - a.run.tasks.AbstractDeployTask - DUMP_UNKNOWN_PACKAGE
2020-03-22 00:49:04,967 [4655203] INFO - #com.android.ddmlib - Created install session 969164047 with options -r -t -S 14667707
2020-03-22 00:49:04,967 [4655203] INFO - #com.android.ddmlib - Uploading APK C:\Projects\PROJECT_FOLDER\source\PROJECT_NAME\app\build\outputs\apk\debug\app-debug.apk to session 969164047
2020-03-22 00:49:08,055 [4658291] INFO - WindowsPerformanceHintsChecker - Windows Defender status: NONE_EXCLUDED; projectDirExcluded? false
2020-03-22 00:49:17,686 [4667922] WARN - #com.android.ddmlib - Failed to commit install session 969164047 with command cmd package install-commit 969164047. Error: INSTALL_FAILED_INVALID_APK: Package couldn't be installed in /data/app/PACKAGE_NAME -d9UfJVvKMP9-OA81TwCVvQ==: Package /data/app/PACKAGE_NAME -d9UfJVvKMP9-OA81TwCVvQ==/base.apk code is missing
2020-03-22 00:49:17,687 [4667923] WARN - a.run.tasks.AbstractDeployTask - Install failed: The application could not be installed: INSTALL_FAILED_INVALID_APK The APKs are invalid.
2020-03-22 00:49:17,689 [4667925] INFO - run.AndroidLogcatOutputCapture - stopAll()
2020-03-22 00:49:21,408 [4671644] INFO - rationStore.ComponentStoreImpl - Saving appEditorColorsManagerImpl took 12 ms
*注意我用 PACKAGE_NAME 和项目名称替换了我的包名
我已经用完了所有选项。最坏的情况是我会降级 gradle 和 gradle wraper 甚至 Android Studio,我故意讨厌它,因为它是倒退了一步
【问题讨论】:
发布版本的同样问题? 我还没有检查发布版本 我尝试生成调试 APK 并没有安装。只显示“应用安装失败” 我将尝试发布 APK,但我仍然认为它仍然会有相同的结果 发现和你一样的问题,但是我可以在真机上运行应用程序,而不是在虚拟机上,我认为第三方.so文件可能不支持在虚拟机上运行。 【参考方案1】:另一种解决方案是删除 ../android/app/build/outputs/apk/debug/app-debug.apk 文件,然后运行“npm run android”/“yarn android”
【讨论】:
不知道为什么这是 -1,它对我有用,在我更新我的 gradle 版本后出现此错误 这对我有用【参考方案2】:我尝试更新 Android Studio,但仍然收到 INSTALL_FAILED_INVALID_APK 错误。然后我更新了firebase依赖项,仍然无济于事
有趣的是,它在我的另一个项目上运行良好。这使我检查了它们的不同依赖项,并意识到唯一的主要依赖项是 AppDynamics gradle 插件
我删除了 AppDynamics 工具,它起作用了!我假设甚至在之前,gradle 中的 AppDynamics 工具就是阻止应用程序正常运行的原因。我已经确认这是 AppDynamics 插件的问题。参考链接:https://community.appdynamics.com/t5/End-User-Monitoring-EUM/AppDynamic-EUM-setup-for-Android-Cordova-project/td-p/38864
在此期间,我将降级,直到 AppDynamics 提供修复程序
【讨论】:
谢谢,我们也在使用 App Dynamics。 你到底降级了什么? AppDynamics、AS 还是 AppDynamics Gradle 插件?你降级到什么版本?我遇到了同样的问题 找到它:将 gradle 构建工具降级到3.5.0
是一种解决方法。
谢谢,对我们来说也是广告问题
使用 appdynamics 20.5.2 时不存在问题【参考方案3】:
删除手机上具有相同捆绑 ID 的现有应用对我有用。
【讨论】:
【参考方案4】:有时是因为您正在安装 apk 的模拟器/设备。如果您之前在设备上安装了 apk,然后又将其卸载,那么它可能仍然存在于您的设备上。因此,在模拟器中,转到 settings -> Apps,然后检查列表中的应用程序。如果存在,请单击该特定应用程序,然后单击“为所有用户卸载”(通常从右上角的三个点开始)。
希望对你有帮助:)
【讨论】:
我在我的设备设置和应用列表中找不到它【参考方案5】:对我有用的是执行以下操作:
-
卸载开发版(或应用商店版)。如果您有一个具有相同捆绑 ID 的应用程序,它将拒绝安装示例应用程序的不同变体。
adb uninstall <BUNDLE_ID>
刷新安卓版本cd ./android && ./gradlew clean && cd ../
运行react-native run-android --variant=release
【讨论】:
【参考方案6】:我记得遇到过同样的问题并使用 build>clean 项目解决了它。但是正如您所说,这在这里不起作用是link 谈论清单中您的应用程序包名称的细微变化及其最近的变化。只是觉得它可能看起来很漂亮,因为它没有出现在您已经检查过的事物列表中。加上您发布的日志中提到的包名称未知,因此看起来很可疑。
希望对你有帮助
【讨论】:
我已经检查过了,还是一样,我的包名也不能改【参考方案7】:当您设置模拟器 (AVD) 时,您正在选择外部和内部存储大小。
而且我认为您超出了该存储大小。
解决方案(它们都在释放一些存储“类别”):-
卸载不必要的应用程序。 从 AVD 管理器中擦除模拟器数据。 通过编辑特定的模拟器来扩展存储大小。【讨论】:
我没有使用模拟器,我使用的是具有 128gb 存储空间的 Note 0 实际设备【参考方案8】:我遇到了同样的问题。尝试通过终端adb uninstall com.packagename
命令卸载应用程序,然后重新安装应用程序。基本上,有时该应用程序是为设备中的其他用户安装的,从设备卸载只是从当前用户卸载它,这就是它给出此错误的原因。试一试,我希望它会有所帮助。
【讨论】:
【参考方案9】:我在 Android Studio 4.0 中开始出现这个问题。我在打开 Android Studio 后立即尝试在模拟器上启动应用时收到“INSTALL_FAILED_INVALID_APK”。
找到了一种解决方法 - 如果我先在真实设备上启动应用程序,那么在模拟器上启动不是问题。 100% 有效。
不幸的是,Android Studio 仍然存在问题...
【讨论】:
【参考方案10】:application>- android:extractNativeLibs="true"
为我工作
minSdkVersion 23
ndk
abiFilters "armeabi-v7a"
minSdkVersion 小于 23,也为我工作
【讨论】:
以上是关于如何修复 Android Studio 中的 INSTALL_FAILED_INVALID_APK 错误?的主要内容,如果未能解决你的问题,请参考以下文章
如何修复 Android Studio 中的 React Native 应用程序错误?
如何修复 Android Studio 中的 INSTALL_FAILED_INVALID_APK 错误?
如何修复 Android Studio 中的 Lottie 错误 - 'Error:Execution failed for task' java.lang.RuntimeException [...
如何在运行应用程序时修复 android studio 版本 3.6.2 中的“无法解析结果路径字符串:”错误?
如何修复 Android Studio 中的“使用 JsonReader.setLenient(true) 在第 1 行第 1 列路径 $ 处接受格式错误的 JSON”错误
Android Studio Arctic Fox的Git Log和搜索窗口中文乱码问题解决方案(关键词:AS,2020.3.1,显示错误,Find in Path,版块,方块,修复,新版本)(代码片