在支持Android Cupcake(1.5)的设备上,如何检查和激活GPS?


当前回答

是的,你可以检查以下是代码:

public boolean isGPSEnabled (Context mContext){
    LocationManager locationManager = (LocationManager)
                mContext.getSystemService(Context.LOCATION_SERVICE);
    return locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);
}

其他回答

如果用户允许在其设置中使用GPS,则将使用GPS。

你不能再显式地打开它,但你不必这样做——这是一个隐私设置,所以你不想调整它。如果用户同意应用程序获得精确的坐标,它就会被打开。然后,如果可以的话,位置管理器API将使用GPS。

如果你的应用在没有GPS的情况下真的没有用处,而且它是关闭的,你可以在右边的屏幕上打开设置应用,这样用户就可以启用它。

是的,你可以检查以下是代码:

public boolean isGPSEnabled (Context mContext){
    LocationManager locationManager = (LocationManager)
                mContext.getSystemService(Context.LOCATION_SERVICE);
    return locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);
}

此方法将使用LocationManager服务。

来源链接

//Check GPS Status true/false
public static boolean checkGPSStatus(Context context){
    LocationManager manager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE );
    boolean statusOfGPS = manager.isProviderEnabled(LocationManager.GPS_PROVIDER);
    return statusOfGPS;
};

下面是在我的情况下工作的片段

final LocationManager manager = (LocationManager) getSystemService(Context.LOCATION_SERVICE );
if ( !manager.isProviderEnabled( LocationManager.GPS_PROVIDER ) ) {
    buildAlertMessageNoGps();
}

`

Kotlin解决方案:

private fun locationEnabled() : Boolean {
    val locationManager = getSystemService(Context.LOCATION_SERVICE) as LocationManager
    return locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)
}