GPS自动启用问题

时间:2014-01-27 05:47:05

标签: android geolocation gps

我正在开发应用程序,该应用程序会在启动应用程序时自动将用户引导至GPS设置。

  Problems:

1.我是否必须在清单中声明写入安全设置(如果是,那么它的显示“只允许系统应用程序使用”)在这种情况下该怎么做,如果答案是肯定的

2.我的应用程序现在正在做什么,它将用户直接带到GPS设置,我想要的是,将出现一个对话框(仅当GPS关闭时)具有“GPS设置”和“取消”按钮。如果用户选择“取消”,我想显示另一个对话框,显示“应用程序无法使用GPS关闭”。

如何处理这些问题,请提出建议。

startActivity(new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS));

我正在使用此代码进行GPS设置。

2 个答案:

答案 0 :(得分:2)

Write Secure Settings不需要任何额外许可。您只需使用以下内容检查您的GPS是启用还是禁用:

// flag for GPS status
 boolean isGPSEnabled = false;

 // Declaring a Location Manager
protected LocationManager locationManager;

locationManager = (LocationManager) mContext
                .getSystemService(LOCATION_SERVICE);

        // getting GPS status
        isGPSEnabled = locationManager
                .isProviderEnabled(LocationManager.GPS_PROVIDER);

if (!isGPSEnabled ) {
    // no GPS provider is enabled
    //Create your Dialog over here
        } else{
    // GPS provider is enabled
 }

答案 1 :(得分:0)

您可以像以下一样检查GPS的状态

LocationManager locationManager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE);
if (locationManager != null) {
  boolean state = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);
}