【发布时间】:2016-01-06 14:39:45
【问题描述】:
有人知道如何以编程方式关闭 iPhone 的 GPS 吗?一旦我使用 CLLocationManager 读取我的位置的三个读数,我就会停止更新位置,如下面的代码所示:
- (void)locationManager:(CLLocationManager *)manager
didUpdateToLocation:(CLLocation *)newLocation
fromLocation:(CLLocation *)oldLocation {
if((newLocation.horizontalAccuracy > 0.0f) &&
(newLocation.horizontalAccuracy < 7000.0f) ){
if(self.locations.count > 3){
[self.locationManager stopUpdatingLocation];
}
[self.locations addObject:newLocation];
}
但是,当用户使用我的应用程序并耗尽电池电量时,这似乎仍然让 GPS 保持开启状态。我需要做的就是读取位置三遍,以便准确读取,然后关闭 GPS。有人知道如何用 Objective-C 关闭 GPS 吗?
【问题讨论】:
-
停止更新后,请确保释放您的位置管理员。如果您需要重新开始更新,请重新创建它。这意味着您的准确性将再次开始变差,但应用程序将能够更快地关闭硬件。