在 LG Optimus S 中找不到纬度经度
Posted
技术标签:
【中文标题】在 LG Optimus S 中找不到纬度经度【英文标题】:Can't find latitude longitude in LG Optimus S 【发布时间】:2011-05-17 09:58:22 【问题描述】:大家好,我正在构建一个地理定位应用程序。 以下是我用来获取纬度和经度的代码:-
LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
android.location.Location loc = lm.getLastKnownLocation(lm.NETWORK_PROVIDER);
dataManager.setLatitude(Double.toString(loc.getLatitude()));
Log.d("LATITUDE", dataManager.getLatitude());
上面的代码似乎适用于 HTC 设备和三星设备。 但由于某种奇怪的原因,我无法获得 LG Optimus S 中的经纬度。
我被扔了NullPointerException
任何帮助将不胜感激
提前致谢
【问题讨论】:
我的清单文件中同时包含 COARSE_LOCATION 和 FINE_LOCATION getLastKnownLocation 处理起来有点棘手。它并不总是由系统设置。在我的三星 Galaxy S 上它是空的,而在 Nexus 1 上工作得很好,我遇到了一些重大问题。我的建议是你抓住 NPE 并在这种情况下触发位置更新。这样你就可以得到一个位置,即使需要一段时间。 你也可以使用谷歌齿轮来满足你的目的。 我上次听说 google gears 是在我制作 Web 应用程序时。它是否也适用于移动应用程序?我正在开发一个 android 应用程序,请您提供链接 【参考方案1】:很可能,这与设备类型无关。如果您没有蜂窝网络(例如拔出 SIM 卡),则 loc 在您的代码中将为空。
【讨论】:
是的...手机确实有 SIM 卡,但它无法感知纬度和经度认为当我创建位置管理器对象时它不会给我错误它在我打印时给出错误它在日志猫中 嗯,预期:Log.d("这将抛出 NPE", null);以上是关于在 LG Optimus S 中找不到纬度经度的主要内容,如果未能解决你的问题,请参考以下文章
将经度和纬度从 CLLocationManager 传递到 URL?