android - GPS 未启用但 isProviderEnabled() 返回 true

标签 android

我可以使用 isProviderEnabled() 检查 GPS 是否打开。如果它没有打开,我将启动 Intent 以便用户可以启用 GPS。 最后,我再次检查用户是否启用了 GPS。 如果用户不启用 GPS 出来,isProviderEnabled() 仍然返回 NULL。 可能是什么问题 ?请指导我。

    String provider = LocationManager.GPS_PROVIDER;
    // Check if GPS is enabled
    boolean enabled = myLocationManager.isProviderEnabled(provider);

    if (!enabled) {
                    // GPS not enabled
        Log.d("", "Provider " + provider + " is not enabled");
        Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
        startActivity(intent);
                    // Consider the case when user does not enable GPS and come out. 
    } else {
        Log.d("", "Provider is enabled");

    }       

            // Re-check if user has enabled or not. (Note: case: user has not enabled GPS)
    enabled = myLocationManager.isProviderEnabled(provider);
    if(!enabled)
    {

        Log.d("","provider not enabled");
    }
            else
            {
                    // Control is coming here though user has not enabled GPS in settings
                    Log.d("","GPS is enabled");
            }

谢谢, 双联实验室

最佳答案

使用此代码检查 GPS 启用并告诉我发生了什么,

private void CheckEnableGPS(){
    String provider = Settings.Secure.getString(getContentResolver(),
      Settings.Secure.LOCATION_PROVIDERS_ALLOWED);
       if(!provider.equals("")){
           //GPS Enabled
        Toast.makeText(AndroidEnableGPS.this, "GPS Enabled: " + provider,
          Toast.LENGTH_LONG).show();
       }else{
        Intent intent = new Intent(Settings.ACTION_SECURITY_SETTINGS);
           startActivity(intent);
       }   
   }

关于android - GPS 未启用但 isProviderEnabled() 返回 true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10117587/

相关文章:

android - 如何以编程方式更改形状颜色?

android - TabPageIndicator 上的居中图标

java - 如何在过滤器 ListView- Item-Click 上加载特定 Activity (多个 Intent )?

java - 如何将小图标覆盖在 ImageView 上的另一张图像上

android - Facebook android native 应用程序无法在实际设备上运行

android - FusedLocationProviderClient 适合 Android 上的 MVVM 在哪里?

java - Android PlayStore 'InAppUpdate' 绝对强制升级(必须立即升级,不能取消任何选项)

android - 将动画覆盖添加到来自相机的视频

javascript - React Native 检测飞行模式

带有 RecyclerView 的 Android ViewPager 在 BottomSheet 中工作不正确