ロケーションにネットワーク プロバイダーを使用するアプリケーションがあります。アプリが起動するたびにisProviderEnabled()
、LocationManager のメソッドを使用してネットワーク プロバイダーが有効になっているかどうかが確認されます。
false が返された場合は、ネットワーク プロバイダーを有効にしてアプリケーションを使用するようにユーザーに警告します。このロジックは非常にうまく機能していましたが、Google 認定以外のデバイスでは例外がいくつかありました (これらのデバイスには通常 Maps API がないため、問題にはなりません)。isProviderEnabled()
最近、ICS と JellyBean エミュレーターの一部のデバイスで、有効になっていても 一貫して「false」が表示されます。
それ以来、Settings.Secure.getString(getContentResolver(), Settings.Secure.LOCATION_PROVIDERS_ALLOWED)) から返された文字列を使用して、「ネットワーク」が含まれているかどうかを確認するようになりました。これはハックですが、今のところ機能しています。メソッドが使えるようになりたいですisProviderEnabled()
。
誰もこの問題を見たことがありますか?