iphone/ipad模拟器的权限是否与设备本身不同?我只问,因为我正在尝试使用文件I/O,创建并写入我自己的临时文件失败,但创建和写入到我的Mac上的桌面(来自iPad模拟器)完全没问题。iPhone模拟器上的文件权限
我在做模拟器上创建的tempfile文件时出错了吗?
iphone/ipad模拟器的权限是否与设备本身不同?我只问,因为我正在尝试使用文件I/O,创建并写入我自己的临时文件失败,但创建和写入到我的Mac上的桌面(来自iPad模拟器)完全没问题。iPhone模拟器上的文件权限
我在做模拟器上创建的tempfile文件时出错了吗?
权限不同。在模拟器上,您可以在应用程序的目录之外进行编写,但不能在设备上进行编写。如果您可以在设备上,则更改其他应用程序或攻击操作系统。
非常感谢,这是很好的知道。对于那些希望获得更多帮助的人来说,使用writeToFile而不是writeToURL并在应用程序目录中进行定位可以解决这个问题。 – mtrc 2010-07-21 09:53:04
你使用临时目录吗?在模拟器上,NSTemporaryDirectory()返回Mac OS X tmp,它位于应用程序沙箱外的/ var中。
#if TARGET_IPHONE_SIMULATOR
NSString *tmpPath = [NSHomeDirectory() stringByAppendingPathComponent: @"tmp"];
#else
NSString *tmpPath = NSTemporaryDirectory();
#endif
很难说如果有什么不对的地方没有看到你的代码......你在什么目录下写你的临时文件? – Vladimir 2010-07-20 13:46:47