2013-08-31 35 views
1

爲什麼提醒位置自動解僱授權2秒後,因爲我沒有任何授權,所以代表不工作?任何幫助?我沒有使用ARC。CLLocation授權彈窗提醒自動解僱

+1

我有同樣的問題,我正在使用ARC。您可以在alertview出現後立即看到,委託方法 - (void)locationManager:(CLLocationManager *)manager didChangeAuthorizationStatus:(CLAuthorizationStatus)狀態 被調用。可能是一個錯誤。 – onekiloparsec

+0

我確認我的問題是管理員的墮落(即使它是一個實例變量)。我正在觀察應用程序停用通知以避免使用管理器,但是當alertview彈出時,應用程序變爲事實上處於非活動狀態...... – onekiloparsec

回答

2

我想你正在使用ARC,所以請記住,manager必須是一個實例變量(不是本地),否則它會被釋放!

if (![CLLocationManager locationServicesEnabled]) { 
    [manager startUpdatingLocation]; 
} 
1

它發生如果你有位置管理器作爲變量而不是屬性。當方法(通常是viewDidLoad)達到其結束時,它將取消分配變量,彈出的授權消失。