我正在工作 android 应用程序。当我运行该应用程序时出现以下错误 occred。请帮助我......
01-20 20:39:02.955: WARN/dalvikvm(5690): VFY: arbitrarily rejecting large method (regs=93 count=23019)
01-20 20:39:02.955: WARN/dalvikvm(5690): VFY: rejected Lez/com/Action_module_screen;.da ()V
01-20 20:39:02.955: WARN/dalvikvm(5690): Verifier rejected class Lez/com/Action_module_screen;
01-20 20:39:02.955: INFO/System.out(5690): verify Errorez.com.Action_module_screen
一些谷歌搜索原因和解决方法:
From http://www.mentby.com/Group/android-developers/vfy-任意-rejecting-large-method.html http://www.mentby.com/Group/android-developers/vfy-arbitrarily-rejecting-large-method.html
这意味着(寄存器数*指令字数)是
比大2^21[2,097,152]。
您的错误表明该方法可能有很多参数和局部变量(regs=93
)和大量的代码(指令count=23019
):
`93 registers * 23019 number of instruction words` = 2,140,767
exceeding the "size" limit of 2,097,152 by 43,615 (2%)
验证者认为你的方法不合理:-)。
我真的没想到有人会这么做——这是故意的到
防止验证程序使应用程序的本机堆膨胀。是否
方法取一个大量的论点,或者有很多当地的
变量? I've 也看到了一些不良行为当一个方法有 4 个时
调用另一个带有 15 个参数的方法;这
寄存器分配器有点害怕。
调试信息的存在与否会影响
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)