2016-07-22 60 views

回答

0

如果

動態

你的意思編程方式(即通過一個對話框/從你的應用程序中的一段代碼的方式),答案是沒有。模擬位置是開發人員的一項功能,因此要啓用/禁用它們,您需要發送給系統的開發人員設置。

在您將用戶發送到那裏之前,您可能需要檢測是否實際啓用了模擬位置。對於API級別< 18,這是通過Settings.Secure標誌完成的,對於> = 18,可以使用新引入的Location.isFromMockProvider()。我已經寫了一個小工具類,將可靠地檢測所有近期(無根)Android設備模擬地點:

LocationAssistant - Hassle-free location updates on Android

它處理和封裝大部分的位置設置的,也可以拒絕模擬地點。也許你會發現你的用例很方便。