简体   繁体   English

Android 位置网络提供程序始终为 false

[英]Android Location network provider is always false

LocationManager locationManager= (LocationManager)this.getSystemService(Context.LOCATION_SERVICE);
    boolean gpsIsEnabled = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);
    boolean networkIsEnabled = locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER);

    System.out.println("gpsIsEnabled  " +gpsIsEnabled +" \n networkIsEnabled  "+networkIsEnabled);

    if(networkIsEnabled)
    {
        location = locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
    }
    else if(gpsIsEnabled)
    {
        location = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);  
    }

    System.out.println("Provider " + provider + " has been selected.");
    onLocationChanged(location);
    System.out.print(location.getLatitude());


<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

I am always getting false for network enabled when I have it enabled in my phone and I have also tried with wifi and it always false.当我在手机中启用网络时,我总是为网络启用错误,我也尝试过使用 wifi,但它总是错误。 I have tested with a galaxy S5 and always false.我已经用 Galaxy S5 进行了测试,但始终是错误的。

必须打开位置设置才能使其正常工作。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM