Objc将数据写入iOS真机的plist文件中

简介:

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处.
如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;)


如何写入模拟器的博文在 这里

但是这对真机不管用,因为在真机环境下,App在Xcode中的Resources文件夹都是不可写的.所以我们要在App第一次运行时将需要修改且长久保存的数据放到Document目录下:

//在Document目录中初始化地图数据文件,因为该目录下文件可写且可以持久保存
+(void)initDataFile{
    NSString *docPath = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask,
                                                            YES)[0];
    //取得目标文件路径
    sMapInfoInDocPath = [docPath stringByAppendingPathComponent:@"MapInfo.plist"];
    NSFileManager *fm = [NSFileManager defaultManager];
    //如果目标文件不存在说明是App第一次运行,需要将相关可修改数据文件拷贝至目标路径.
    if (![fm fileExistsAtPath:sMapInfoInDocPath]) {
        NSError *error = nil;
        //取得源文件路径
        NSString *srcPath = [[NSBundle mainBundle] pathForResource:MAP_INFO_FILE ofType:@"plist"];
        if (![fm copyItemAtPath:srcPath toPath:sMapInfoInDocPath error:&error]) {
            CCLOG(@"ERR:copy file failed:%@",error);
        }
    }
}

注意当删除一个App后,该App先前存放在Document目录下的所有文件都会被删除.

相关文章
|
2月前
|
开发框架 前端开发 Android开发
Flutter 与原生模块(Android 和 iOS)之间的通信机制,包括方法调用、事件传递等,分析了通信的必要性、主要方式、数据传递、性能优化及错误处理,并通过实际案例展示了其应用效果,展望了未来的发展趋势
本文深入探讨了 Flutter 与原生模块(Android 和 iOS)之间的通信机制,包括方法调用、事件传递等,分析了通信的必要性、主要方式、数据传递、性能优化及错误处理,并通过实际案例展示了其应用效果,展望了未来的发展趋势。这对于实现高效的跨平台移动应用开发具有重要指导意义。
221 4
|
8月前
|
JSON JavaScript 安全
iOS应用程序数据保护:如何保护iOS应用程序中的图片、资源和敏感数据
iOS应用程序数据保护:如何保护iOS应用程序中的图片、资源和敏感数据
73 1
|
8月前
|
移动开发 前端开发 数据安全/隐私保护
iOS发布证书.p12文件无密码解决办法及导出带密码的新.p12文件方法
iOS发布证书.p12文件无密码解决办法及导出带密码的新.p12文件方法
233 0
|
5月前
|
iOS开发 开发者
iOS平台RTMP|RTSP播放器如何实时回调YUV数据
我们在做RTMP、RTSP播放器的时候,有开发者需要自己处理拉取到的YUV数据,做二次分析之用,为此,我们做了以下的设计:InitPlayer之后,再调用SmartPlayerStart()接口之前,设置yuv数据回调即可。
|
8月前
|
Java iOS开发
iOS的数据序列化(又称持久化)的两类使用方式
iOS的数据序列化(又称持久化)的两类使用方式
76 0
|
8月前
|
移动开发 小程序 API
uniapp通过蓝牙传输数据 (ios)
uniapp通过蓝牙传输数据 (ios)
388 1
|
8月前
|
移动开发 监控 小程序
mPaaS常见问题之uniapp ios端云打包的配置config文件如何解决
mPaaS(移动平台即服务,Mobile Platform as a Service)是阿里巴巴集团提供的一套移动开发解决方案,它包含了一系列移动开发、测试、监控和运营的工具和服务。以下是mPaaS常见问题的汇总,旨在帮助开发者和企业用户解决在使用mPaaS产品过程中遇到的各种挑战
220 0
|
8月前
|
Java 开发工具 Android开发
SLS:使用 OTel 官方 SDK 采集 Android、iOS Trace 数据实践
本文介绍了使用 OTel 官方 SDK 采集 Android、iOS Trace 数据实践。
509 7
SLS:使用 OTel 官方 SDK 采集 Android、iOS Trace 数据实践
|
监控 开发者 iOS开发
iOS开发:腾讯bugly符号表文件上传
腾讯bugly确实是一个好东西,它实现了面向移动开发者提供专业的 Crash 监控、崩溃分析等质量跟踪服务。能帮助移动互联网开发者更及时地发现掌控异常,更全面的了解定位异常,更高效的修复解决异常
354 0
iOS开发:腾讯bugly符号表文件上传