`
ydbc
  • 浏览: 716050 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

Android系统移植与调试之------->安装apk时出现错误Failure [INSTALL_FAILED_DEXOPT]问题解决的方法

 
阅读更多

在android4.0源码里面编译出来apk后,用adbinstall (或adb install -r 重装)安装时,报错[INSTALL_FAILED_DEXOPT]。

xu@xu-PC:~$ adb install workspace/out/target/product/generic/system/app/xxx.apk
2820 KB/s (225970 bytes in 0.078s)
pkg: /data/local/tmp/xxx.apk
Failure [INSTALL_FAILED_DEXOPT]
或者

xu@xu-PC:~$ adb install -r workspace/out/target/product/generic/system/app/xxx.apk
2768 KB/s (225970 bytes in 0.079s)
pkg: /data/local/tmp/xxx.apk
Failure [INSTALL_FAILED_DEXOPT]

这是因为在system\app下面的apk是经过优化的,而dex文件不会打包到apk中,dex文件会被优化后,生成odex文件

下面就是程序经编译之后,在workspace/out/target/product/generic/system/app/下生成的.odex和.apk两个文件

Install: out/target/product/generic/system/app/xxx.odex
Install: out/target/product/generic/system/app/xxx.apk

这样安装apk时,就会缺少dex文件,导致报错[INSTALL_FAILED_DEXOPT]。

-->解决办法:

找到未优化过的apk,即在out/target/product/generic/obj/APPS/下找到对应的工程

xu@xu-PC:~$ adb install workspace/out/target/product/generic/obj/APPS/xxx_intermediates/package.apk.unaligned
2400 KB/s (331697 bytes in 0.134s)
pkg: /data/local/tmp/package.apk.unaligned
Success
xu@xu-PC:~$

如果已经安装了该程序,可以重装一下:

xu@xu-PC:~$ adb install -r workspace/out/target/product/generic/obj/APPS/xxx_intermediates/package.apk.unaligned
2873 KB/s (331689 bytes in 0.112s)
pkg: /data/local/tmp/package.apk.unaligned
Success

这样就安装ok了!

(本文转载于:http://blog.csdn.net/xiaoyaovsxin/article/details/8216452)

分享到:
评论

相关推荐

    Android模拟器安装APP出现INSTALL_FAILED_NO_MATCHING_ABIS错误解决方案

    Android模拟器安装APP出现INSTALL_FAILED_NO_MATCHING_ABIS错误解决方案 当我们想在电脑的Android模拟器中安装APP的时候,会报INSTALL_FAILED_NO_MATCHING_ABIS错误【如图1】,导致APP无法在模拟器中运行。下面给出...

    Android安装应用 INSTALL_FAILED_DEXOPT 问题及解决办法

    今天在帮助客户解决一个问题时,由于他们的手机是用的5.0系统身边没有5.0系统的手机,只能用一个模拟器来安装测试应用,但是在安装过程中碰到了以下问题: The application could not be installed: INSTALL_FAILED...

    adb1.0.26包含fastboot.exe

    INSTALL_FAILED_TEST_ONLY 应用是 test-only 的,但安装时没有指定 -t 参数 INSTALL_FAILED_CPU_ABI_INCOMPATIBLE 包含不兼容设备 CPU 应用程序二进制接口的 native code INSTALL_FAILED_MISSING_FEATURE 应用使用...

    odex2dex合并odex和 少dex的apk 为完整的apk文件

    ./dexopt-wrapper android123.apk android123.odex 二、合并odex和 少dex的apk 为完整的apk文件 1. 需要odex所在rom中的一些引用类,一般在 /system/framework 目录中 2 . 通过odex生成class文件 java -jar ...

    美团AndroidDEX自动拆包及动态加载简介

    提示INSTALL_FAILED_DEXOPT方法数量过多,编译时出错,提示:而问题产生的具体原因如下:无法安装(Android2.3INSTALL_FAILED_DEXOPT)问题,是由dexopt的LinearAlloc限制引起的,在Android版本不同分别经历了4M/5M/...

    ODEX文件转换成DEX文件工具

    ./dexopt-wrapper android123.apk android123.odex 二、合并odex和 少dex的apk 为完整的apk文件 1. 需要odex所在rom中的一些引用类,一般在 /system/framework 目录中 2 . 通过odex生成class文件 java -jar ...

    解包打包android内核system.img文件所需工具

    因此需要将修改后的apk包再用dexopt-wrapper优化apk包后生成出odex文件,然后删除apk包里的classes.dex,并在相同目录下放置与apk包同名的odex文件。 按照原system目录的文件结构组织好后,目录复制到linux环境下...

    通过预安装给MultiDex加速

    在AndroidKikat及以前的Android系统上,构建或安装Apk会出现“65535方法数超标”以及“INSTALL_FAILED_DEXOPT”问题,MultiDex是Google为了解决这个问题问题而开发的一个Support库。MultiDex出现的具体背景、使用...

    android的虚拟机dalvik源码-09年7月

    android的虚拟机dalvik源码: run-core-tests.sh Android.mk NOTICE MODULE_LICENSE_APACHE2 README.txt /libdex /libcore-disabled /dexopt /libcore /tools /tests /libnativehelper /dexlist /dexdump /dalvikvm ...

    dynamic-load-apk:动态加载 apk

    #动态加载 Apk 框架##动态加载apk框架可以加载本地apk文件,启动目标apk活动,使用资源和资产##Thanks for ##base of this: ##I add apk md5 check(如果运行时更改apk文件,即使是相同的类文件也会导致...

    android手机端odex化

    超级终端,dexopt-wrapper,使用说明

    Android最大方法数和解决方案1

    尽管在新版本的Android系统中,DexOpt修复了这个问题,但是我们仍然需要对老系统做兼容dalvik bytecode的限制:因为 Dalvik 的 in

    做包者用的apk:关于此ROM

    文本及图片格式时,才显示评分按钮。html格式不显示评分按钮,如有需要,请自己在html文件里面添加; 你的rom介绍可以选用 纯文本txt,图片png,网页html 三种格式; 文件分别为 assets下面的 neirong.txt、...

    Android分包MultiDex策略详解

    但是在早期的Android系统中,DexOpt有一个问题,DexOpt会把每一个类的方法id检索起来,存在一个链表结构里面。但是这个链表的长度是用一个short类型来保存的,导致了方法id的数目不能够超过65536个。当一个项目足够...

    一键整合odex

    市面上唯一能用的odex,其他的都不能用了,好不容易找到的,大家可以使用

    An Introduction to the Android Framework

    An Introduction to the Android Framework, a core architecture view from apps to the kernel

    Android App实现应用内部自动更新的最基本方法示例

    主要介绍了实现Android App内部自动更新的最基本方法示例,包括IIS服务器端的简单布置,需要的朋友可以参考下

Global site tag (gtag.js) - Google Analytics