晚上好的Coders!
我创建了一个查询,在设备位置7英里内获取我周围人的用户名和位置,我想每隔5-10秒更新一次这些对象(我还没有决定)。最好的做法是什么?我应该创建一个NSTimer()
并以这种方式调用它吗?请帮助!!
var timer = NSTimer()
override func viewDidLoad() {
super.viewDidLoad()
timer == NSTimer.scheduledTimerWithTimeInterval(5, target: self, selector: "queryFunc", userInfo: nil, repeats: true)
}
func queryFunc() {
var query = PFQuery(className:"GameScore")
query.whereKey("playerName", equalTo:"Sean Plott")
query.findObjectsInBackgroundWithBlock {
(objects: [AnyObject]!, error: NSError!) -> Void in
if error == nil {
// The find succeeded.
NSLog("Successfully retrieved \(objects.count) scores.")
// Do something with the found objects
for object in objects { NSLog("%@", object.objectId)
}
} else {
// Log details of the failure
NSLog("Error: %@ %@", error, error.userInfo!)
}
}
/*
This is just an example query, the point of this is the timer and how to update objects periodically
*/
}
答案 0 :(得分:0)
尝试添加whereKey:nearGeoPoint:withinMiles:在您的查询中找到距您所在位置7英里范围内的对象
For further details for that check out this link
当您在每次查询后找到数据时,请删除所有以前的数据并将其替换为新数据并刷新您的视图。
NSTimer可能是一个很好的选择。即使我也使用计时器每5分钟在后台同步,但它对我来说还不错。
希望这会对你有所帮助。