我正在实施将数据发送到iphone的网络服务。我的iphone应该每100秒向Web服务询问一次新数据。每100秒调用Web服务的最佳方法在哪里?
你可以就这个问题向我提出建议吗?答案 0 :(得分:0)
使用'NSTimer'
NSTimer* myTimer = [NSTimer scheduledTimerWithTimeInterval:100.0 target: self
selector: @selector(callAfterHundredSecond:) userInfo: nil repeats: YES];
每100.0秒后,iOS将调用以下函数
-(void)callAfterHundredSecond:(NSTimer*) t
{
NSLog(@"webServiceCalledAfter100sec");
}
答案 1 :(得分:0)
您可以运行您的Web服务并在后台线程中接收其数据以及应在前台线程中运行的Timer。然后你可以用旗帜或任何你想要的方法同步这些方法。通过这种方式,您的Web服务会根据您设置的计时器发送响应。
答案 2 :(得分:0)
我有一个相同的场景,但对我来说,在Web服务调用期间Web服务的可用性是有点关键所以我想出的是使用IOS / Android的推送通知,每隔5分钟继续推送通知,收到通知我正在通过这种方式进行通话,我知道网络服务正常运行,我的用户是3G / WIFI系列。由于我在没有用户交互的情况下进行双向同步,因此用户大多数位于没有互联网可用的偏远地区。同时我也使用其他一些东西的通知,所以我想也可以在这里使用它。不知道这是一个好主意,但它确实适用于100多种设备。