android 模拟器上GPS的使用

之前一直是在自己的G2上运行程序,最近在做GPS的应用,想想别人要是没有真机那怎么开发GPS?

所以自己还是把这个问题解决一下吧,免得有的新手不知道怎么配置...

好了,废话到此,转入正题...

JAVA代码:

 

XML代码:

 

加上权限:

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

 

GPS数据模拟方法:

打开DDMS视图,找到Emulator Control,在Manual里面选择Sexagesimal,输入Longitude和Latitude,点击Send.至此完成测试.

另外也有在cmd下面模拟GPS经纬度信息的,那个自己找找,我就没空找了.

 

今天再测试了一下另外一个用Google Apis 8的模拟器,果断发现用不了

 

为什么?搞了半天还以为是SDK的问题,原来是GPS设置的问题,模拟器上GPS设置如下就行了:

 

 

 

但是我的G2上使用无线网络和GPS都选了也可以正常运行...原因何在?难道模拟器真的SB了?它不会自动选择GPS而是选择network作为provider?

加入测试代码:

 

经过测试发现应验如下:

1.两个都选择的时候:

我们可以看到LogCat中输出信息为"Provider : network"!!!

2.只选GPS的时候

 

LogCat中为“Provider:gps”

 

综上,要想在模拟器上使用GPS来定位,有两种方法设置provider

1.如上面所述,只选择GPS来定位,不用无线网络

2.在代码中规定只能用GPS来定位,如:

当然F3就知道GPS_PROVIDER其实就是"gps";

所以如下这样也是可行的:

 

至此,GPS和Google Apis 8在模拟器上结合使用的问题应该就完全解决了。

好了,饭饭去了...哈哈


版权声明:本文为CBirdLG原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。