【问题标题】:device location is always null设备位置始终为空
【发布时间】:2012-06-29 09:13:07
【问题描述】:

关于这个问题,我浏览了很多关于 SO 的帖子: 尝试了Here 中的所有内容, HereHere 没有任何效果。每次位置都是空的。在设备和模拟器上:(。我的 GPS 已打开,互联网已打开,我的清单具有以下权限:

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>

我使用以下代码来获取位置,即设备的经度和纬度...但是在每种情况下,我都会将 location 设为 null

public void find_Location() {
        Log.d("Find Location", "in find_location");

        String location_context = Context.LOCATION_SERVICE;
        locationManager = (LocationManager) getApplicationContext()
                .getSystemService(location_context);

        List<String> providers = locationManager.getProviders(true);
        for (String provider : providers) {
            locationManager.requestLocationUpdates(provider, 1000, 0,
                    new LocationListener() {
                        public void onLocationChanged(Location location) {}

                        public void onProviderDisabled(String provider) {
                        }

                        public void onProviderEnabled(String provider) {
                        }

                        public void onStatusChanged(String provider,
                                int status, Bundle extras) {
                        }
                    });
            Location location = locationManager.getLastKnownLocation(provider);

            if (location == null) {
                Toast.makeText(LbsGeocodingActivity.this, "Location Not found",
                        Toast.LENGTH_LONG).show();
            } else {
                double latitude = location.getLatitude();
                double longitude = location.getLongitude();
                Toast.makeText(LbsGeocodingActivity.this,
                        "LAT..." + latitude + "\nLONG..." + longitude,
                        Toast.LENGTH_LONG).show();
                // addr=ConvertPointToLocation(latitude,longitude);
                // String temp_c=SendToUrl(addr);

            }
        }
    }

【问题讨论】:

  • 请不要对此投反对票...因为我已经浏览了很多帖子,但仍然无法获得location
  • 不确定...你可以尝试重启手机的 wi-fi 吗??

标签: android gps android-location


【解决方案1】:

位置确定需要一些时间,并且会随着时间而改变。当您检查它时,它可能还不可用。

当定位可用时,您将在 onLocationChanged 中收到通知。

【讨论】:

    【解决方案2】:

    我怎么会这么蠢..我的坏..在设置中使用无线网络没有被选中!....导致所有问题! 现在我可以找到位置了。

    我花了 16 个小时才完成这个任务……我的工作效率肯定会下降! :(

    【讨论】:

    • 不过这东西在我的模拟器上还是不行。在设备上工作。
    • 在模拟器中需要通过DDMS设备控制手动发送经纬度
    • @VipinSahu:谢谢 Vipin。我已经这样做了。正如我提到的,在我的设备和模拟器上未选中 使用无线网络。一旦我检查了它,一切都开始工作了。
    • 不过这东西在我的模拟器上还是不行。在设备上工作......这是什么意思
    • 适用于设备含义,不适用于模拟器意味着 AFAIK,Location info 仅显示在设备上。它不适用于模拟器。
    猜你喜欢
    • 1970-01-01
    • 2019-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-19
    • 2012-07-30
    相关资源
    最近更新 更多