0
我遇到了奇怪的UITableViewController問題。我正在請求viewDidLoad方法內的位置服務authroization,並且我可以看到alertbox出現。但是,此警報箱會保持幾秒鐘顯示然後消失。這是爲什麼發生?如何保持位置服務請求警報框保持出現
override func viewDidLoad() {
let locationManager = CLLocationManager()
locationManager.requestAlwaysAuthorization()
}
我試過在UIViewController里加載這個UITableViewController並遇到不同的問題。這次只顯示推送通知服務請求警報箱,並且位置服務請求被完全忽略。我猜是因爲推送通知服務請求不是來自我,而是來自ios,並且我的位置服務請求被ios通知請求覆蓋。這是我的假設是否正確或者是否存在對此行爲的探索?
好點!在請求前我應該檢查授權狀態。但是代碼屬於哪裏? – user30646
個人而言,我喜歡在實際需要開始使用位置服務之前檢查狀態。但是如果你在視圖控制器的視圖第一次出現的時候這樣做,你顯然可以使用'viewDidAppear'。 – matt
在使用服務之前,我正在詢問權限。然後我想,也許我應該要求所有我需要的服務的權限,並將它們排除在外。 – user30646