Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从应用程序中查找iOS应用程序二进制文件_Ios_Objective C - Fatal编程技术网

如何从应用程序中查找iOS应用程序二进制文件

如何从应用程序中查找iOS应用程序二进制文件,ios,objective-c,Ios,Objective C,为了验证我的方法正在运行的地址空间,我需要知道我的应用程序二进制文件的位置,如何获取该位置。 比如说 /private/var/mobile/Containers/Bundle/Application/A866E404-88F4-4E2A-B387-4808064DF1AF/{AppName}.app/{AppName} 但是应用程序/之后的标识符在每次安装时都会更改。有什么地方可以查询到这个位置吗?private/var/mobile/Containers/Bundle/Application

为了验证我的方法正在运行的地址空间,我需要知道我的应用程序二进制文件的位置,如何获取该位置。 比如说

/private/var/mobile/Containers/Bundle/Application/A866E404-88F4-4E2A-B387-4808064DF1AF/{AppName}.app/{AppName}

但是
应用程序/
之后的标识符在每次安装时都会更改。有什么地方可以查询到这个位置吗?

private/var/mobile/Containers/Bundle/Application/A866E404-88F4-4E2A-B387-4808064DF1AF/{AppName}.app”部分应该是:

NSString *appPath = [[NSBundle mainBundle] bundlePath];

太好了,谢谢。你知道有没有一种方法可以在C中实现这一点吗?我正在尝试保护我的应用程序,并使用Obj-C方法,使某人更容易刷这个并返回不同的值。5年后,对不起。。。这工作正常,但当尝试访问应用程序文件时,即使在只读模式下,也会出现“权限被拒绝”错误。是否有解决方法?您所说的“验证地址空间”是什么意思?当应用程序通过AppStore分发时,您的方法还可以在哪里运行?这是一种安全机制。如果黑客能够访问该设备并越狱,那么他就可以将不同的实现与您的代码挂钩。在这种情况下,实现可能存在于不同的地址空间中,例如“/MobileSubstrate”或“/cyscript”。当然,黑客可以修改二进制文件,使地址空间看起来仍然有效,但这更困难。这只是确保你的应用程序不被破坏的众多步骤中的一步。