我正在开发基于Android AOSP 4.4.2的产品,运行在定制硬件上。我有一个单独的分区/opt
和我的apk存储在/opt/harsh/app/
。我也有一个符号链接/vendor
,它指向/opt/harsh
(这是根据设计结构要求的)。Android制作apk文件在dalvik-cache中的重复.dex文件
我现在面临的问题是,有在/data/dalvik-cache
为/opt/harsh/app/*.apk
和/vendor/app/*.apk
这是相同的文件创建多个.DEX文件,但是这两个组的.DEX文件都有不同的用户群。正因为如此,我的应用程序运行不正常。如果我更改为不创建/opt
分区,并且只创建/vendor
分区而不是符号链接并将apk放入其中,则一切正常。
请帮忙...
这不造成重复DEX文件,它是创造每个APK一个DEX文件。问题是你有多个APK。你想通过这样做解决什么问题? – fadden 2015-02-16 16:34:40
是的,我有多个APK,但理想情况下它不应该扫描/ opt/harsh目录。我们的旧设备在Android 2.3上运行,它只扫描/ system和/ vendor目录。我们正在移植Android 4.4并面临这个问题。由于这种多个APK的问题是某些应用程序因抛出无法实例化ComponentInfo/Class未找到的异常而崩溃。 – androidFan 2015-02-17 10:46:25
@fadden:另外值得注意的是,如果我不创建/ vendor符号链接,那么即使APK存在,它也不会为/ opt/harsh/app目录创建DEX。但是如果我创建符号链接,那么为/ vendor/app和/ opt/harsh/app都创建DEX! – androidFan 2015-02-18 07:12:25