ida调试Dalvik显示局部变量

Posted chen-yijie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ida调试Dalvik显示局部变量相关的知识,希望对你有一定的参考价值。

用ida进行Dalvik调试还是有很大的优势, 最关键的是可以不用打包. 现在有很多app都开始检查是否重新打包的. 虽然也可以去pass调这些地方. 但是显然很麻烦.. 另外一些app还加壳了. 搞起来更加麻烦… 所以可以用ida进行调试还是一种选择. 不过原来用ida调试Dalvik的时候有一个致命问题. locals窗口变量都没法显示.. 最近纠结了几次. 算是找到了一个解决办法.

 

在ida的locals窗口如果是显示成这样.

技术图片

这里局部变量v0 v2都没法显示. 去到ida的论坛咨询这个问题, 说是丢失了变量类型信息. 所以没法显示类型.

技术图片因为ida自己没法确定类型形式. 所以需要我们自己来指定变量的类型信息, 其实ida的教程里面有说. 只是以前没仔细看. 原来是这样. 比如现在要显示v2的类型. 我们要在Watch View窗口.自己添加一个类型, 类似这样

(Object*)v2
(String)v2
(char*)v2
(int)v2

  技术图片这样用ida调试相对就舒服很多了!

以上是关于ida调试Dalvik显示局部变量的主要内容,如果未能解决你的问题,请参考以下文章

Dalvik与jvm区别

Dalvik - 将java文件添加到项目时局部变量类型不匹配 - 没有proguard [重复]

c#中,调试的时候,下面怎么不显示局部变量和监视窗口?

Xcode 4.6.1 调试器局部变量不可用

Android 逆向ART 脱壳 ( DexClassLoader 脱壳 | DexClassLoader 构造函数 | 参考 Dalvik 的 DexClassLoader 类加载流程 )(代码片段

Android 逆向ART 脱壳 ( DexClassLoader 脱壳 | DexClassLoader 构造函数 | 参考 Dalvik 的 DexClassLoader 类加载流程 )(代码片段