ios - 使用新的位置数据更新核心数据(魔法记录)

标签 ios objective-c core-data magicalrecord

我有一个函数,每次调用位置更新委托(delegate)时都会调用该函数。我敢肯定这不是解决此问题的最佳方法,因为经常更新它可能会很昂贵。有人能给我指出每 10 秒左右进行一次更新的正确方向吗?

我当前的代码:

TrackCoords *oTR= [TrackCoords MR_createEntity];
oTR.speed=[NSNumber numberWithInt:Location.speed*2.2369362920544];
oTR.lat=[NSNumber numberWithInt:Location.coordinate.latitude];
oTR.lon=[NSNumber numberWithInt:Location.coordinate.longitude];
oTR.elevation=[NSNumber numberWithInt:Location.altitude];

[[NSManagedObjectContext MR_defaultContext] MR_saveToPersistentStoreAndWait];

最佳答案

您的代码看起来不错。就核心数据而言,它并不太频繁。

如果您担心“昂贵”,还有电池耗尽等问题,请尝试通过仅观察重要的位置变化来减少发送给位置管理器委托(delegate)的更新。

关于ios - 使用新的位置数据更新核心数据(魔法记录),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20665586/

相关文章:

ios9 : NSLocalizedString inside framework

ios - 在 IOS 上使用 AudioKit 将声音文件作为 MIDI 音符发送

iphone - 使用 AudioQueue 服务播放 MP3 数据缓冲区 : Prime failed (-50)

ios - Async_Dispatch 线程

html - 如何在 iOS 中检测 UIWebView 中音频的播放状态?

ios - NSFetchRequest 和 NSPredicate,数组比较和匹配

ios - MagicalRecord 几个截断, "then cannot find data for a temporary oid"

iphone - 为什么 NSDateFormatter 无法解析 ISO 8601 格式的日期

ios - 在 Objective-c 中同步连接到 AWS DynamoDB

iphone - 直接从 NSFetchedResultsController 获取