dalvik相关内容

什么是 Android 中的 ODEX 文件?

安装一些 android 应用程序后,我发现它会在智能手机中更改为 odex 文件(不是 apk).它是如何发生的?谁能教教我,我很感兴趣. 解决方案 博客文章大部分是对的,但不是完全的.要全面了解 odex 文件的作用,您必须先了解一些应用程序文件 (APK) 的工作原理. 应用程序基本上是美化的 ZIP 档案.Java 代码存储在名为 classes.dex 的文件中,该文件由 ..
发布时间:2021-11-27 21:32:38 移动开发

是否可以在运行时从 Android 应用程序动态加载库?

有什么办法可以让Android应用程序在运行时下载和使用Java库? 这是一个例子: 想象一下,应用程序需要根据输入值进行一些计算.应用程序要求提供这些输入值,然后检查所需的 Classe 或 Method 是否可用. 如果没有,它会连接到服务器,下载所需的库,并在运行时加载它以使用反射技术调用所需的方法.实现可能会根据各种标准(例如下载库的用户)而变化. 解决方案 抱歉 ..
发布时间:2021-11-27 18:29:02 移动开发

如何在 android/dalvik 上动态加载 Java 类?

我想知道是否以及如何动态加载 dex 或 class 文件在 dalvik 中,我编写的一些快速测试函数是这样的: public void testLoader() {输入流中;内里;字节[]数据=新字节[2048];尝试 {in = context.getAssets().open("f.dex");len = in.read(data);附寄();DexFile d;Class c =de ..
发布时间:2021-11-25 19:11:00 Java Web开发

在 Android 中使用静态变量

在 android 中,是否推荐使用静态变量?例如,在 Java 中实现单例模式,我通常会这样做: private static A the_instance;公共静态一个 getInstance() {如果(the_instance == null){the_instance = new A();}返回_实例;} 此外,Android JVM 何时会清除这些内容? 解决方案 stat ..
发布时间:2021-11-25 17:00:09 Java Web开发

Android:javac 与 Dalvik

我的理解是 Google 不喜欢 Oracle 在 Java ME 中使用 JRE 的许可政策,所以它只是重写了它使用自己的 JVM 规范,模仿 JRE,但行为略有不同,尤其是当它出现时使事情更高效、更安全. 所以,如果我的理解是正确的,这意味着当 javac 在一些 Java 源代码上运行并编译成“二进制"时byetcode,一个兼容的 JVM 将解释与 Dalvik 不同的字节码(在某些 ..
发布时间:2021-11-22 16:19:18 Java Web开发

.apk 在 ART 中的安装过程.与 Dalvik VM 安装过程的区别

最近我回答了这个问题,这里描述了 .apk 文件到安卓手机的整个安装过程.一件事是关于使用 Dalvik VM.现在我想知道使用 ART 的安装过程是否完全相同?有什么区别?我的意思是 PackageManager、path、转换为 dex 格式 等的工作.谷歌搜索没有提供太多信息,只是关于性能、管理内存和类似的东西.如果有知识的人可以分享这些信息,我将非常感激. 解决方案 Android ..
发布时间:2021-11-15 21:57:05 其他开发

安卓&调用当前 API 没有的方法

如果我想获得这样的外部路径,并且设备有 Android 2.1 (api 7) 文件 f;int sdkVersion = Integer.parseInt(Build.VERSION.SDK);如果(SDK版本> = 8){System.out.println(">=8");f = getApplicationContext().getExternalFilesDir(null);} 别的 ..
发布时间:2021-11-15 04:54:26 其他开发

如何在Android应用程序中使用rt.jar中的类?

我正在构建一个引用外部库的android应用程序.问题在于该库使用java.beans.PropertyDescriptor,这会在运行时导致Dalvik异常. 我该如何解决这个问题?我在另一个论坛上发现可以操纵字节码来加载Dalvik未知的类. 有什么建议吗? 谢谢 解决方案 我该如何解决这个问题? 将源代码获取到外部库中并重写它以避免 java.beans. ..
发布时间:2021-04-28 18:51:18 其他开发

Android进程内存映射

我尝试了解 com.android.browser 进程[下面的内存映射]中的内存区域,并且有几个问题: 对于没有路径名的地址范围,这里映射了什么? 有多个[stack:xxxx]区域,它们是本地线程堆栈?如果不是,那是什么?他们似乎被映射到许多不同的位置分散在内存空间中. 如果假设堆栈位于用户空间的顶部,则用户空间内存为2GB,其余2GB由内核空间占用.是可以看到内核空间的内存 ..
发布时间:2021-04-28 18:51:15 其他开发

具有预先确定大小的数组的toArray

在使用 ar.toArray(new String [ar.size()])时,Android Studio 3.2.1 警告有关预先设置大小的数组,并建议使用空数组: 有两种样式可以将集合转换为数组:预定大小的数组(例如c.toArray(new String [c.size()]))或使用空数组(如c.toArray(new String [0]).在较旧的Java版本中建议使用预先设置 ..
发布时间:2021-04-09 20:15:32 其他开发

浏览器发送"Dalvik"作为用户代理

Android浏览器在请求标头中发送Dalvik作为用户代理. 我目前正在一个具有简单登录页面的移动网站上工作,该页面会先验证用户名和密码,然后再授权用户个人资料. 但是当我检查请求标头时,我看到了不寻常的情况,同一设备上有两个用户代理. 以下是来自同一设备的用户代理: "Mozilla/5.0(Linux; Android 4.1.2; C5303 Build/12.0.A. ..
发布时间:2021-04-05 20:19:36 其他开发

无法通过Davik VM执行.java文件

我正在关注链接 我首先成功执行了此命令。 javac .java 然后,当我尝试执行以下命令时,遇到错误“ 类名与路径不匹配”。 dx --dex --output = .dex .class .class和.java具有相同的名称,但是我想我必须编写.class文件名的显式路径。那么现在该怎 ..
发布时间:2020-10-14 22:55:19 其他开发

路标和gdata jar出现多个dex文件错误

我的应用同时需要 signpost-core-1.2.1.2.jar 和Google的其中一个库 gdata-core-1.0.jar 。但是路标jar有一些打包在gdata-core包中的类。因此,我的应用程序项目没有建立。错误如下: 无法执行dex:多个dex文件定义了Lcom / google / gdata / util / common / base /逃生者 如何 ..
发布时间:2020-10-14 22:55:15 其他开发

E / dalvikvm:找不到类“ android.util.ArrayMap”

当我在模拟器上运行我的应用程序时,Android Studio会显示此错误: E / dalvikvm:找不到类'android。 util.ArrayMap',从方法com.android.tools.fd.runtime.Restarter.getActivities 我解决了吗? 解决方案 ArrayMap位于支持库中。您需要将其添加到build.gradle中的依赖项中 ..
发布时间:2020-10-14 22:55:13 其他开发

eclipse无法“构建工作区”在大型android文件上...?

我在eclipse上遇到了一个严重的问题,我需要编译一个更大的类。用“更大”的意思是,该类有大约5000行代码... 问题是在保存该项目时,蚀需要几秒钟(30-40) “构建工作空间”。确切地说,它说“ 50%”,并持续说30-40秒。然后,它会因以下错误而中断: [控制台]: [ 2010-07-09 15:28:39-Dex Loader]无法执行dex:null [2 ..
发布时间:2020-10-14 22:54:02 其他开发

垃圾收集如何在Android 4.2 Jelly bean Dalvik VM中工作?

编辑:这句话“在android 2.3中,并发标记和清除用于与堆栈相关的对象,将所有内容都视为指针,而复制垃圾回收用于堆中的对象”是否正确?有人可以解释吗? android 2.3中的垃圾收集器 我知道已经讨论过 Android垃圾收集的主题,但是我找不到关于其工作原理的清晰详细的解释,尤其是在最新版本的Android中,果冻豆4.2 。 除了主要问题外,我还有两个更具体的问题: ..
发布时间:2020-10-14 22:53:59 其他开发

AndFix修补方法如何?

我最近了解到一个Android库 AndFix ,该库允许实时方法修补。现在,据我所知,Dalvik不允许运行时操作字节码或dex。 有人可以很好地解释 AndFix 是否进行实时修补? 解决方案 寻找在源代码中,您可以在此处看到Dalvik的补丁程序机制。 dalvik_replaceMethod()函数正在修改内部Dalvik状态,更改 Method 结构以指向替换方法。 ..
发布时间:2020-10-14 22:53:57 其他开发

向下压铸时的铸造性能不同

让我们假设我们有三个(或更多)类 公共类A {} 公共类B扩展了A {} 公共类C扩展了B的实现G {} 假设每个类都有自己的20种(或更多)方法。 强制转换为C与强制转换为A是否会对性能产生较大影响? Java强制转换如何工作? 在强制转换时,是否必须通过反射检查所有方法和字段的存在性? 编辑: 类的大小(字段和方法的数量)是否会影响投射时的性能? ..
发布时间:2020-10-14 22:53:55 其他开发