spritekit 可以用coredata么

spritekit 可以用coredata么,第1张

这两个东西我都用过,两者都能实现对数据库 *** 作,功能上需求都能满足。先前在公司实习的时候,原先项目中用的是SQLite,感觉 *** 作很直接。如果先前有一点数据库和SQL基础的话,写起来会感觉很亲切,都是一些数据库 *** 作的语句。但是当 *** 作变多之后,语句越来越多,就很烦,代码比较多,看起来也会混乱一些。后来新项目中尝试了CoreData,因为苹果一直在推这个东西。CoreData用起来比直接sql语句方便许多,而且很适合进行代码封装、重构。其实后来在用CoreData的时候,参照RestKit的ObjectMapping和CoreData部分对其进行了少量封装,使得CoreData用起来非常方便。例如:添加一条User数据User*user=[Userobject]user.name=@"example"[objectStoresave]后来做开发一直都在用CoreData,主要是我觉得用起来太方便了,代码能够精简许多。另外,App升级之后数据库字段或者表有更改会导致crash,CoreData的版本管理和数据迁移变得非常有用,手动写sql语句 *** 作还是麻烦一些。CoreData不光能 *** 纵SQLite,CoreData和iCloud的结合也很好,如果有这方面需求的话优先考虑CoreData。CoreData并不是直接 *** 纵数据库,比如:使用CoreData时不能设置数据库的主键,目前仍需要手动 *** 作。效率上其实跑程序时感觉不出来,毕竟手机上的数据不能跟网站的数据和访问量相提并论。总的来说,个人比较喜欢用CoreData,因为自己比较熟悉,使用起来也非常方便。PS:既然你一直在CoreData,就应该坚持用下去,除非是真的碰到很致命的无法解决问题。中途换掉既有的自己熟悉的东西,费时费力,实际用起来没区别,得不偿失。

RestKit分为3个子模块,分别是:ObjectMapping, Network, CoreData

我自己在使用的时候,由于对CoreData的不熟悉,于是就使用了前两个模块

ObjectMapping是良好封装的由NSDictionary对象到NSObject的映射

Network部分现在使用的是AFNetworking

最新版本的RestKit使用的AFNetworking还是1.3版本的,AFNetwoking 2.0还不兼容,因为原作者自己的项目需要支持iOS 5.0,所以要兼容AFNetworking 2.0估计还需要一些时间

题主的情况是发现那两个例子比较复杂,那么问题估计是出在对iOS的CoreData的不熟悉,你先写一个用CoreData的Demo项目,然后再回头看例子里AppDelegate的那些代码吧

使用iOS模拟器

1. 下载示例应用程序TestAutomation.xcodeproj,并打开它。这个项目是一个很简单的包含2个tab的tabbar应用程序。

2. 确保选中如下图所示的“TestAutomation >iPhone 5.0

Simulator”模式(或许已经切换成5.1了,因此它可能是iPhone5.1模拟器)。

3. 启动Instruments(Product >Profile),或者通过⌘I。

4. 选择左边的iOS Simulator,然后再选择Automation模板,然后点击“Profile”。

5. Instruments就已经启动好后,然后直接开始录制了。这里先停止录制,(红包按钮或者⌘R)。

6. 在左边的Scripts窗口,点击“Add >Create”创建新的脚本。

7. 在脚本编辑器里,输入下面的代码

var target = UIATarget.localTarget()

var app = target.frontMostApp()

var window = app.mainWindow()

target.logElementTree()

8. 重新运行这段脚本⌘R(不需要保存)。脚本跑起来后,可以在日志打完后停止它。

赞一个!就这样完成了第一个UIAutomation测试用例。

使用iOS设备

除了将测试用例运行模拟器上,也可以将它运行在一个真实的设备上。不过,自动化测试用例只能运行在支持多任务的:iPhone 3GS,iPad,iOS

>4.0等设备上。遗憾的是不管iPhone 3G的系统版本是什么,都不支持。

下面是如何 *** 作:

1. 通过USB接口连接上iPhone。

2. 选择 “TestAutomation >iOS Device”模式。

3. 确保Developper profile设置成Release模式(而不是Ad-Hoc Distribution

profile)。默认情况下,profiling是设置成Release模式的(因为没有必要将profile设置成Debug模式)。

4. 启动测试 (⌘I)

5. 后面的步骤请参考前面模拟器部分


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/7957766.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-12
下一篇 2023-04-12

发表评论

登录后才能评论

评论列表(0条)

保存