如何修复 Android Studio 中的 INSTALL_FAILED_INVALID_APK 错误?

How to fix INSTALL_FAILED_INVALID_APK error in Android Studio?

我最近将我的 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. 
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,我故意讨厌它,因为它是倒退

有时是因为 emulator/device 您正在安装 apk。如果您之前在设备上安装了 apk 然后卸载了,那么它可能仍然存在于您的设备上。因此,在模拟器中,转到 settings -> Apps,然后检查列表中的应用程序。如果存在,请单击该特定应用程序,然后单击 'Uninstall for all users'(通常从右上角的三个点开始)。

希望对您有所帮助:)

我记得我遇到过同样的问题并使用 build>clean project 解决了它。但正如您所说,这在这里不起作用 link 谈论您的应用程序包名称在 Manifest 中的细微变化及其最近的变化。只是觉得它可能值得一看,因为它没有出现在您已经检查过的事物列表中。加上您发布的日志谈论包名称未知,所以这看起来很可疑。

希望对你有帮助

设置模拟器 (AVD) 时,您需要选择外部和内部存储大小。

而且我认为您超出了存储空间大小。

解决方案(他们都在释放一些存储"category"):-

  • 卸载不需要的应用程序。
  • 从 AVD 管理器中擦除模拟器数据。
  • 通过编辑特定的模拟器来扩展存储大小。

我遇到了同样的问题。尝试通过终端 adb uninstall com.packagename 命令卸载应用程序,然后重新安装应用程序。基本上,有时应用程序是为设备中的其他用户安装的,从设备卸载只是从当前用户卸载它,这就是它给出此错误的原因。试一试,我希望它会有所帮助。

我尝试更新 Android Studio,但它仍然出现 INSTALL_FAILED_INVALID_APK 错误。然后我更新了firebase依赖项,仍然没有用

有趣的是,它在我的另一个项目上运行顺利。这让我检查了它们在哪些依赖项上有所不同,并意识到唯一的主要依赖项是 AppDynamics gradle 插件

我删除了 AppDynamics 工具,它起作用了!我假设甚至在 gradle 中的 AppDynamics 检测是阻止应用程序正确地 运行 的原因。我已经确认这是 AppDynamics 插件的问题。参考link:https://community.appdynamics.com/t5/End-User-Monitoring-EUM/AppDynamic-EUM-setup-for-Android-Cordova-project/td-p/38864

与此同时,我将降级,直到 AppDynamics 提供修复程序

application>- android:extractNativeLibs="true" 

为我工作


minSdkVersion 23

ndk {
   abiFilters "armeabi-v7a"
}

minSdkVersion 小于 23,也适合我

我在 Android Studio 4.0 中开始出现问题。我在打开 Android Studio 后立即尝试在模拟器上启动应用程序时收到“INSTALL_FAILED_INVALID_APK”。

找到解决方法 - 如果我先在真实设备上启动应用程序,那么在模拟器上启动就没有问题。 100% 有效。

Android 不幸的是,Studio 仍然存在问题......

另一种解决方案是删除 ../android/app/build/outputs/apk/debug/app-debug.apk 文件,然后删除 运行 "npm 运行 android" / "yarn android

删除 phone 上具有相同捆绑 ID 的现有应用对我有用。

对我有用的是执行以下操作:

  1. 卸载开发版本(或应用商店版本)。如果您的应用程序具有相同的 bundle id,它将拒绝安装示例应用程序的不同变体。 adb uninstall <BUNDLE_ID>
  2. 刷新 android 构建 cd ./android && ./gradlew clean && cd ../
  3. 运行 react-native run-android --variant=release