繁体   English   中英

如何验证应用程序二进制文件是否已启用饼图

[英]How to verify that app binary is pie enabled

由于Apple严厉打击提交的未启用PIE的应用,因此我将目标版本设置为4.3,并将“不生成与位置无关的可执行文件”设置为“否”,但是当我提交给Apple时,他们仍然返回说“非PIE二进制文件-可执行文件“ MyApp”不是位置独立的可执行文件。请确保将构建设置配置为创建PIE可执行文件。”

有人知道我需要更改其他哪些设置吗?

谢谢

您只需要检查它是否运行良好,请转到终端并将自己放在根文件夹中(只需键入cd并按Enter键),然后在终端中键入以下行:$ otool -hv /path/to/MyApp.app/MyApp(/ path / to / MyApp.app / MyApp应该是您的应用程序的路径)

要获取您的应用程序的路径,请转到xCode,在“产品”文件夹中,找到您的应用程序,右键单击它并在finder中显示,在finder中右键单击它并获取信息 ,然后找到路线。 您只需要在该路由的末尾添加yourApp.app/yourApp

在终端中运行该行之后,将显示以下内容:

Mach header
      magic cputype cpusubtype  caps    filetype ncmds sizeofcmds      flags
   MH_MAGIC     ARM         V7  0x00     EXECUTE    39       4548   NOUNDEFS DYLDLINK TWOLEVEL PIE
/Users/AGMacBookOscar/Library/Developer/Xcode/DerivedData/Stache-dryffgnvhpkbsxguxecizmadewxv/Build/Products/Debug-iphoneos/Wisdom.app/Wisdom (architecture armv7s):
Mach header
      magic cputype cpusubtype  caps    filetype ncmds sizeofcmds      flags
   MH_MAGIC     ARM        V7S  0x00     EXECUTE    39       4548   NOUNDEFS DYLDLINK TWOLEVEL PIE

如果在标志部分下有一个PIE,则一切正常,您可以在此处获取信息:

https://developer.apple.com/library/ios/#qa/qa1788/_index.html#/apple_ref/doc/uid/DTS40013354

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM