如题,见代码:
LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
Location location1 = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
Location location2 = locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
location1和location2总是为Null,不知道代码有没有问题,哪位指导一下,多谢了!
LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
Location location1 = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
Location location2 = locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
location1和location2总是为Null,不知道代码有没有问题,哪位指导一下,多谢了!
解决方案 »
- 如何判断dialog获得焦点和失去焦点?
- 如何实现listview上的多选和全选,并可以把选中的内容移动,删除
- surfaceView浏览自定义照相机景物问题
- 请问下,dip在屏幕物理尺寸不同时,还可以适配吗
- 开发者注意:Android4.0半数应用未适配,格局恐变
- 对于自定义的listview,如何去掉他外面的边框,看起来和下面的按钮更协调呢
- Android代码生成的布局里,既有横向的又要有纵向的怎么实现?
- 关于cwm recovery
- PreferenceFragment的疑问
- 安卓虚拟机能直接跑java程序吗
- 在用布局嵌套时出现了前缀错误,请教该如何修改?
- Dialog下的Builder单击事件如何能够跳转到一个新的Activity ?求教育
如下:
我也研究这个问题 网络定位需要网络定位服务器 就是需要根据你手机提供的信息进行分析后返回你的经纬度。
我用V880 和 联想A2017都无法定位。V880好歹是有GPS 和Network两种定位服务的。A2017直接连网络定位的服务都没开启。小米顺利定位了。
但是有一点就是 无论在哪款手机上 百度地图都是可以定位的。
所以我做了一下猜测:
(1)网络定位服务(原版google定位) 不但需要你联网 而且需要你有完善的google基础服务包。在这点上。V880和联想A2017都没有 但是小米手机是很全的。
(2)网络定位服务的提供商除了google还有百度。 原版的应该都是指向google服务器的。而百度是自有的服务器,或者是使用了国内的定位服务器。我自己下载了百度的开发包,然后调用其中的获取经纬度的定位函数。OK 3秒之内迅速网络定位。所以当时我想 为啥不用百度的定位服务作为定位数据源获取经纬度后 然后设置到百度地图或者google地图上呢。
我觉得这个是非常可行的。当然国外的我没尝试。你可以设置两种定位数据源。哪个获取到,就用哪个的。你所做的尝试 包括返回null 我都是自己亲自写过代码验证过的 属实。 所以我的意见也更加具有针对性。
这边有个帖子在问:
http://bbs.csdn.net/topics/390166481
google参照了这个例子:
http://download.csdn.net/detail/jackquan/4683215还有这个:
http://download.csdn.net/detail/grape001/3883418百度的定位 你也可以去百度一个 获取直接去百度的官网去找一个sample.
必须要打开模拟器,如果没有的窗口可以通过window-->show view 进行设置