我有一个NSLog调用,显示我正在程序中使用NSFileManager的当前目录。
在XCODE中运行我的应用程序时,我的“当前目录”显示为:
/Users/gsteiner/Desktop/Program Code/Band Manager/build/Debug
这是预期的,因为它是已编译应用程序的位置。但是,如果我然后转到查找程序并双击编译的应用程序(位于上述路径),则显示当前目录:
/
或根目录。
我原以为“当前目录”将是包含应用程序的目录,但显然情况并非如此。
任何人都可以告诉我这是为什么?是某种类型的错误,还是它应用程序启动的方式。如果是这样,找到编译应用程序所在目录的最佳方法是什么?
谢谢!
答案 0 :(得分:3)
iOS的安全机制和应用程序沙盒之一是将每个应用程序的工作目录设置为其根目录。这样,没有应用程序可以访问另一个 应用程序的目录/资源(当然无法访问系统工具)。
请查看this document了解更多相关信息。