我有一个使用网络提供商作为其位置的应用程序。每次应用程序启动时,它都会使用isProviderEnabled()
LocationManager 中的方法检查网络提供程序是否已启用。
如果它返回 false,我会向用户发出警报以启用 Network Provider,然后使用该应用程序。这个逻辑运行得非常好,除了非谷歌认证的设备有一些例外(不用担心,因为它们通常也没有 Maps API)。最近,一些设备在 ICS 上,现在在 JellyBean 模拟器上,isProviderEnabled()
即使它已启用,我也会得到一致的“错误”。
我已经开始使用从 Settings.Secure.getString(getContentResolver(), Settings.Secure.LOCATION_PROVIDERS_ALLOWED)) 返回的字符串来查看它是否包含“网络”。这是一个黑客,但它现在正在工作。我希望能够使用isProviderEnabled()
方法。
有没有人见过这个问题?