當(dāng)編碼如下的時(shí)候,進(jìn)入頁(yè)面的時(shí)候可以看到UIAlertView彈出框出現(xiàn)一下,剛想點(diǎn)擊的時(shí)候,他不見了,這個(gè)郁悶
CLLocationManager* _locationManager = [[CLLocationManager alloc] init]; _locationManager.desiredAccuracy = kCLLocationAccuracyHundredMeters; if ([[UIDevice currentDevice].systemVersion floatValue] >= 8) { //由于IOS8中定位的授權(quán)機(jī)制改變 需要進(jìn)行手動(dòng)授權(quán) //獲取授權(quán)認(rèn)證 [_locationManager requestWhenInUseAuthorization]; } [_locationManager startUpdatingLocation];究其原因是在arc下用完就被釋放了,為了確保用戶可以點(diǎn)擊權(quán)限,只需要將 _locationManager 設(shè)置為屬性即可,如下:
@PRoperty (strong, nonatomic) CLLocationManager* locationManager; self.locationManager = [[CLLocationManager alloc] init]; _locationManager.desiredAccuracy = kCLLocationAccuracyHundredMeters; if ([[UIDevice currentDevice].systemVersion floatValue] >= 8) { //由于IOS8中定位的授權(quán)機(jī)制改變 需要進(jìn)行手動(dòng)授權(quán) //獲取授權(quán)認(rèn)證 [_locationManager requestWhenInUseAuthorization]; } [_locationManager startUpdatingLocation];如此再測(cè)試,完全沒問(wèn)題!
|
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注