我想跟踪Android
应用程序中某些特定代码行的系统调用,并使用strace
或system call hooking
,我可以获取针对APK
的系统调用列表
我想知道是否有任何函数调用或其他任何我们已经知道系统调用的确切数量,以便我可以在我感兴趣的代码行之前和之后放置它?
答案 0 :(得分:1)
您尝试做的事情的麻烦在于您的一步与Java VM脱离了底层系统。它可以在你的脚下做各种与系统调用相关的东西,你的应用程序无法控制它。
在非Android世界中,最常用的系统调用是“gettimeofday”,因为它从未被库函数缓存,并且相当容易看到。然而,正如你在上一个问题中提到的那样,由于虚拟机正在自行调用gettimoufday调用(最有可能用于会计目的),因此这要困难得多。因此,您希望选择一个导致系统调用但不太可能被VM正常调用的android函数。一些通过API查看的候选人包括:
祝你好运。答案 1 :(得分:0)
你可以找到自己。在“hello world”应用程序中计算系统调用,向其添加函数调用,再次计算调用,差异是添加的函数调用的次数。