2017-06-27 52 views
0

我構建了一個使用Beacons插件的離子應用程序,該應用程序又使用LocationManager插件。 This is the tutorial I followed.如何多次調用locationManager.requestWhenInUseAuthorization函數? Cordova

正如您在iOS上所瞭解的,它要求用戶允許該應用使用位置信息。如果用戶允許,則狀態保存在某處。如果設置爲「不允許」,我需要稍後請求用戶允許應用程序使用LocationManager

以下是我有:

requestWhenInUseAuthorization函數被調用一次。我需要能夠再次調用它來更新狀態。 任何人都可以幫助我嗎?

回答

1

如果授權已被授予,即使您調用該方法,iOS也不會重新向用戶顯示對話框。如果用戶拒絕授權或尚未回答,再次調用該方法將再次向用戶提供對話。

爲了檢查是否授權已被批准,你可以檢查getAuthorizationStatus()這樣的:

cordova.plugins.locationManager.getAuthorizationStatus() 
    .then(function(authorized){ 
    ... 
}); 
+0

感謝大衛。有沒有辦法更新或刪除狀態並再次顯示請求對話框? – Octtavius

+0

最終用戶可以前往應用程序的設置,並隨時撤銷權限。但是,無法以編程方式刪除權限。 – davidgyoung