iphone/ipod touch app 的开发使用了沙盒,即程序员能访问的一些文件要在自己程序的沙盒之内,一个应用程序的目录除了编译后的程序文件,通常还会有自己的document,tmp目录,可以通过调用api来获取这些路径,然后保存文件。 当使用xcode编译执行时,通常会启动一个iphone simulator来执行app,但是有个问题是,每次用simulator启动时,生成的app程序的根目录都是不同的。这也意味着,如果你有一份存好数据的文件,要放到document或者tmp目录下,然后在应用程序里通过调用GetDocumentDirectory类似的api来读时,得到的都是不同的路径(如果不修改代码,不重新编译则不会),也就是说,你需要每次测试运行时,都要把你保存好的数据文件拷到本次程序运行目录的document下,这样调试起来非常麻烦。如何解决这个问题? ? 其实也很简单。。。用google大法就好了。沙盒技术是在跑真正的iphone/ipod touch上时的限制,当跑simulator时,其实可以从其它路径读取文件。也就是说,你可以把文件放到一个你指定的其它地方,不需要放到app下的document下,这样当跑simulator时,app也可以读到非自己沙盒的目录下的文件。而当真正发布一个app时,也就是在iphone/ipod touch上运行时,则每次app的运行的根目录是固定的(不象跑simulator时会动态改变),这时再把数据文件放到真正的沙盒document或者tmp目录下就可以了。 为了综合这上面这两种情况,当以simulator的方式来跑的时候,会有一个 TARGET_IPHONE_SIMULATOR ? 的宏,所以我们可以在获取文件时这么写: ? ? - (NSString?*) dataFilePath { #if TARGET_IPHONE_SIMULATOR return?@"/Users/fengbo/project/test/yourFileName"; #else NSArray?*paths =?NSSearchPathForDirectoriesInDomains(NSDocumentDirectory ?,?NSUserDomainMask,?YES); NSString?*documentsDirectory = [paths?objectAtIndex:0]; return?[documentsDirectory?stringByAppendingPathComponent:@"yourFileName"]; #endif } ? ? 这样就可以满足上面两种情况了。
详细解决方案
iphone simulator 资料路径
热度:216 发布时间:2016-04-25 06:29:15.0
相关解决方案
- iphone 模拟器,该如何处理
- c#c++,android,ios(iphone),php,java视屏课程 散分
- 有哪位高手用过JPlayer ,进来一下,IPHONE 等设备播放有关问题
- 对照Windows 8模拟器(Simulator)和Windows Phone仿真器(Emulator)
- 单个人去做手机开发选什么平台好?android,iphone?解决办法
- 手机模拟器V7 Simulator 跟 WinWAP for Windows 的用法
- iphone app拖进iTunes生成ipa包出现embedded.mobileprovision异常
- 对于手机android iphone ipad 在线播放视频,服务器需要哪些要求呢?该怎么解决
- >>> PayPal mobile for Android / iPhone 开发包 开放啦!
- OPhone Vs iphone, 作为开发者的我们将何去和从?
- HTML,CSS,Javascript in iPhone (转从 koubei F2E 善朋)
- iphone + html5是个美模式
- 共享两个日前手机项目的HTML5的widget,星星评级以及标签选项卡,样式美观,iphone/android可用
- ipad 和 iphone 上的有关问题
- iPhone 筹建PHP版Push服务器 实例操作
- iphone/ipod网页开发课程及规则
- iphone UIWebView 的运用
- iPhone运用:JSF2 Tag Reference,offline view by iPhone
- iphone 获取UIWebView内Html步骤
- iphone Web App 领航设计探讨
- iPhone Safari Web开发心得
- iPhone Android Web开发(要略)
- JS 判断浏览器客户端门类(ipad,iphone,android)
- iphone ipad android手机访问wcf service出现中文乱码(!)
- iPhone SE销量惨淡?见见这些数据就知道了
- 一九七零年// iPhone “变砖”后可继续正常使用的解决方案
- iPhone 6S 有苹果不愿意讨论的有关问题
- iphone 浏览器自动解析数字为号码解决方法
- 怎么禁止 iPhone Safari video标签视频自动全屏
- iPhone 六的自适应布局