我的iPhone應用程序使用位置服務。當我第一次安裝並運行它時,它會顯示對話框詢問用戶是否想暫時允許使用位置服務並立即消失。這種情況連續發生幾次。對話框詢問用戶是否想允許使用位置服務彈出並在iPhone中消失
這是已知的錯誤還是我做錯了什麼?
我的iPhone應用程序使用位置服務。當我第一次安裝並運行它時,它會顯示對話框詢問用戶是否想暫時允許使用位置服務並立即消失。這種情況連續發生幾次。對話框詢問用戶是否想允許使用位置服務彈出並在iPhone中消失
這是已知的錯誤還是我做錯了什麼?
我剛剛在我的應用程序中遇到了同樣的問題,我將此添加爲任何使用此問題並遇到此舊問題的人的答案。
問題是如果你在本地instanciate CLLocationManager並要求它更新它的位置,彈出窗口後會立即消失。
你必須使CLLocationManager屬性(或至少你不應該在本地instanciate),然後它的工作。
有同樣的問題,這個答案有幫助 –
你是對的:這是因爲局部變量沒有在其他地方引用,所以ARC會釋放它,它會被釋放,導致對話框消失。 因此,使CLLocationManager屬性或實例變量。 –
這聽起來像操作系統要求您批准使用位置服務的應用程序。我不知道有什麼突出的問題會阻止你關閉和重新打開你描述的方式。據我所知,你沒有任何控制權,當你的應用程序觸發一個基於位置的方法(例如-startUpdatingLocation或-startMonitoringForRegion)時,它會自動更新。
有可能你有另一個衝突的觀點,試圖從操作系統警報竊取視圖,但沒有任何代碼,很難說。希望這可以幫助。
是的,這就是發生了什麼。問題是我有不同的視圖,我使用位置服務,但沒有一個在應用程序負載上運行。加載的主視圖和第一視圖不使用位置服務。 – Misha
我會考慮在每個地方禁用你的位置信息,並且一次一個地重新添加它們,直到你找到誰給你帶來麻煩。您可以將您的模擬器重置爲出廠設置,並將重置您的應用程序的位置服務觸發器。這應該有助於你進行測試。 –
你可以發佈一些使用位置管理器的代碼嗎? – chown