微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ios8 – iOS 8上的ptrace

我试图在ptrace上调用一个像thisptrace一样的函数(PT_DENY_ATTACH,0);
但是当我尝试使用#include< sys / ptrace.h>导入它时,Xcode会给我一个错误’sys / ptrace.h’文件找不到.我错过了什么,我是否需要导入一个库,或者这在iOS上根本不可用?

解决方法

这里的问题是Xcode正在将其SDK基本路径添加到所有系统头路径(例如,/ Applications / Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.0.sdk/usr/include /).不幸的是,ptrace.h不存在,但可以在/usr/include / sys /中找到.因此,要解决此问题,您需要将include语句更改为:
#include </usr/include/sys/ptrace.h>

我不知道为什么ptrace.h不包含在SDK中,但是当你在手机上运行时,你正在寻找的功能确实有效.

更新:虽然这确实允许您使用ptrace功能,但上传到Apple将导致应用拒绝,原因如下:

Non-public API usage:

The app references non-public symbols in <app name>: _ptrace

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐