Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/39.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
将JSON文件发送到iPhone进行iOS应用程序测试_Iphone_Ios_Objective C_Json_Local Storage - Fatal编程技术网

将JSON文件发送到iPhone进行iOS应用程序测试

将JSON文件发送到iPhone进行iOS应用程序测试,iphone,ios,objective-c,json,local-storage,Iphone,Ios,Objective C,Json,Local Storage,我已经开发了我的第一个iOS应用程序,我面临着一个相对简单的问题。该应用程序使用存储在本地json文件中的非常基本的数据。现在,我已经将“default.json”文件放在一个本地目录中,Xcode和iPhone6.1模拟器可以访问该目录 我的简单应用程序运行起来很有魅力 我可以使用以下声明轻松访问JSON文件: NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask,

我已经开发了我的第一个iOS应用程序,我面临着一个相对简单的问题。该应用程序使用存储在本地json文件中的非常基本的数据。现在,我已经将“default.json”文件放在一个本地目录中,Xcode和iPhone6.1模拟器可以访问该目录

我的简单应用程序运行起来很有魅力

我可以使用以下声明轻松访问JSON文件:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *jsonPath = [documentsDirectory stringByAppendingPathComponent:@"default.json"];
NSString *jsonString = [[NSString alloc] initWithContentsOfFile:jsonPath encoding:NSUTF8StringEncoding error:NULL];
json文件的本地路径为: /Users/kamil/Library/Application Support/iPhone Simulator/6.1/Applications/CE00BA77-1CAD-4336-8A83-C95341CDF4AA/Documents/default.json

现在,当我尝试在iPhone上使用我的应用程序时,我的应用程序崩溃了。对调试器日志的快速检查表明,在iPhone上访问该文件可能存在问题


如何从iPhone上本机运行的应用程序中存储和访问我的defaul.json文件?

您可以将该文件放入应用程序包中(确保它在XCode中,在项目的“构建阶段”选项卡上的“复制包资源”部分下),然后直接访问该文件,无需路径,只需使用
default.json
。但是,应用程序包中的任何文件都是只读的

或者,如果您希望能够更新文件,您的应用程序通常应在首次启动时将文件从应用程序包复制到文档文件夹,然后从那时起访问文档文件夹中的副本。(提示:如果文档文件夹中不存在该文件,请从应用程序包中复制它。)


分发应用程序时,仅传递应用程序包中包含的文件。从XCode在设备上运行时,只有应用程序包被复制到设备上,所有非本地化文件都位于应用程序包的根文件夹中。

如果@Marcus Adams提到的解决方案不适用于您。尝试删除手机中的应用程序并重新安装

该文件是否存在于iPhone上的documents目录中?我的猜测是否定的,除非您在启动应用程序时将文件从应用程序包复制到文档目录。事故日志指向什么?非常感谢!这个解决方案非常有效!简单而优雅@卡米拉米奥拉,我很高兴我能提供解决方案。请别忘了接受我的回答。干杯,谢谢!我确实删除了这个应用程序,并在iPhone上从头开始构建了这个项目。现在一切都好了!谢谢你的帮助