2015-04-17 89 views
14

這可能是一個非常常見的問題,但是必須有一種方法來以編程方式啓用GPS,因爲它只會在官方Google地圖應用中發生,只需單擊彈出屏幕上的「打開」選項(無需導航到位置設置)。 有人可以幫忙嗎?以編程方式啓用GPS(無導航到位置設置)

+1

請參閱此鏈接.. http://stackoverflow.com/questions/33251373/turn-on-location-services-without-navigating-to-settings-page – 2016-09-28 11:43:03

回答

4

這是因爲他們在播放服務中使用Settings API,如Commonsware的答案中所述,這有點困難。您是與「舊」的方法更好:

Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS); 
startActivity(intent); 
+0

權限拒絕:不允許發送廣播android。 location.GPS_ENABLED_CHANGE 我錯過了什麼?我已經添加了權限。 – Abhilash

+0

他們沒有將設置頁面嵌入到彈出窗口中。絕對不。 –

+0

將用戶重定向到醜陋的設置屏幕後,如何讓用戶回到您的應用?Google Maps的方式非常直觀 - 但我想這不是一個開箱即用的組件嗎? – mmcrae

13

的谷歌地圖應用程序是使用什麼現在是在遊戲服務SDK 7.0.0的提供給我們as SettingsApi。您可以使用SettingsApi來查詢您所需的LocationRequest是否可以使用任何位置提供程序啓用。如果無法實現,並且Play Services認爲用戶可以更改此設置,則可以要求彈出「地圖」顯示對話框。

使用SettingsApi不是特別簡單。我剛剛從my book的版本6.6發佈了a sample app。正如Laurenswuyts的回答所建議的,使用ACTION_LOCATION_SOURCE_SETTINGS很多更容易實現。

+0

聽起來很不錯!讓我試試看。 – Abhilash

+0

以下是SettingsApi的文檔:https://developers.google.com/android/reference/com/google/android/gms/location/SettingsApi – Daan

相關問題