2

我已将 apk 推送到电视盒上的 system/priv-app,但是当我尝试卸载应用程序时出现此错误:

dex2oat : Failed to create oat file: /data/dalvik-cache/arm/system@priv-app@CanvasPackageInstaller@CanvasPackageInstaller.apk@classes.dex: Permission denied
dex2oat : dex2oat took 803.750us (threads: 4)
art     : Failed execv(/system/bin/dex2oat --runtime-arg -classpath --runtime-arg  --instruction-set=arm --instruction-set-features=smp,-div,-atomic_ldrd_strd --runtime-arg -Xrelocate --boot-image=/system/framework/boot.art --runtime-arg -Xms64m --runtime-arg -Xmx512m --instruction-set-variant=cortex-a9 --instruction-set-features=default --dex-file=/system/priv-app/CanvasPackageInstaller/CanvasPackageInstaller.apk --oat-file=/data/dalvik-cache/arm/system@priv-app@CanvasPackageInstaller@CanvasPackageInstaller.apk@classes.dex) because non-0 exit status
art     : Failed to open dex file '/system/priv-app/CanvasPackageInstaller/CanvasPackageInstaller.apk' from memory: Unrecognized version number in /system/priv-app/CanvasPackageInstaller/CanvasPackageInstaller.apk: 0 3 7 

我试图清理 dalvik-cache 但没有成功。这是什么意思 ?

4

3 回答 3

4

037 版本的 dex 格式是在 N 时间范围内引入的。具有早于 N 的 Android 版本的设备将无法读取它。

于 2016-12-19T20:26:50.963 回答
1

对我来说,在将使用 Android 11 设备构建的调试 apk 安装到 Android 8 设备时,我遇到了类似的错误。

解决这个问题的两种方法:

  1. 连接目标设备并在 Android Studio 中重建应用程序。
  2. 从命令行清理并构建,然后将输出的 apk 安装到目标设备。

发布 apk 可能不会发生这种情况。

于 2021-02-19T03:27:51.690 回答
0

在我的情况下,问题是通过启用即时运行解决的。每次启动应用程序时都会出现提示(安装 Android 7 平台以便即时运行/继续不即时运行)。当我按 SKIP 时,某些 apk 存在相同的异常(dex 版本... bla-bla)。安装适当的平台解除异常。

于 2017-07-08T15:14:33.167 回答