Konum tabanlı iPhone uygulamasının performansını optimize etmenin herhangi bir yolunu bulmaya çalışıyorum ve bazı kişilerin CLLocationManager'ınızı başlatıp durdurarak konum güncellemelerini zorlayabileceğinden bahsettiklerini gördüm. Alabildiğim en iyi doğruluğa ihtiyacım var, ve benim durumumdaki kullanıcı muhtemelen her birkaç saniyede bir güncellemeleri görmek ister (10 saniye gibi). Filtreleri buna göre ayarladım, ancak bazen cihaz üzerinde herhangi bir güncelleme yapamadığımı fark ettim.CLLocationManager güncellemelerini zorlama - yardımcı mı yoksa zarar mı veriyor?
Sabit bir zaman aralığı geçtiğinde (20 saniye kullanıyorum) bir güncelleştirmeyi zorlayan aşağıdaki yaklaşımı test ediyorum. Bağırmamda bunun gerçekten kullanıcıya daha doğru güncellemeler sağlamasına yardımcı olamayacağına ve CLLocationManager'ın sürekli çalışmasına izin vermenin muhtemelen en iyi yaklaşım olduğu söyleniyor. IS- aslında çekirdek konum performansını artırmak CLLocationManager güncellemelerini zorlayarak gelmez
- (void)forceLocationUpdate {
[[LocationManager locationManager] stopUpdates];
[[LocationManager locationManager] startUpdates];
[self performSelector:@selector(forceLocationUpdate) withObject:nil afterDelay:20.0];
}
sorum? Performansa zarar veriyor mu? İyi bir GPS alışıyla açık bir alanda olduğum halde, bu yardım eder mi? Bunu deneyimleyen biri var mı? peşin
sayesinde Steve
CLLocationManager'ınızı kurarken, "requestedAccuracy" ölçütünüzü iOS 4+ sürümünde bulunan "kCLLocationAccuracyBestForNavigation" olarak ayarlamanız gerekir. Ardından, işletim sisteminin optimize etmesine izin verin. – Nate