广

android开发

  • IOS开发
  • android开发
  • PHP编程
  • JavaScript
  • ASP.NET
  • ASP编程
  • JSP编程
  • Java编程
  • 易语言
  • Ruby编程
  • Perl编程
  • AJAX
  • 正则表达式
  • C语言
  • 编程开发

    在Android模拟器上模拟GPS功能总是null的解决方法

    2018-04-08 09:03:29 次阅读 稿源:互联网
    广告
    我们都知道,在我们开发时需要在模拟器上模拟GPS,可在Location的时候总是null,上网查了一下,发现如下解决:

    网上大侠的解决方案:
    在模拟器上获取GPS信息时,使用Location loc = LocationManager.getLastKnownLocation("gps");来获取location信息,但是往往在调试中loc是null的,因为首先需要在模拟器中手动添加GPS信息,有两种手动添加方法
    1、在eclipse下,windows-->open perspective-->DDMS-->Emulator control-->Manual下手动设置经纬度,并按send按钮。但是这种方法经过我的测试,需要再下面方法的基础上才有效

    2、在cmd下也可以手动添加信息。

    (1)首先打开模拟器,然后运行cmd,输入telnet localhost 5554(注:5554是模拟器在本机的端口,有可能不一样哈,具体端口号,模拟器左上方有显示的),这样会出现
    Android Console: type 'help' for a list of commands OK的字样。

    如果是使用WIN7的朋友,控制台可能会提示telnet无效什么的,那是因为WIN7下默认是不出现telnet的,需要手动打开。具体为:[1]控制面板-->程序-->打开或关闭Windows功能,然后将Telnet服务器和Telnet客户端勾选上。[2]然后在管理工具-->服务中手动启动Telnet

    (2)使用geo命令模拟发送GPS信号:
    geo fix 经度 纬度

    (3)这时就会发现在模拟器的状态栏上多了一个GPS的标志~再使用Location loc = LocationManager.getLastKnownLocation("gps");就能获取到该坐标的位置了~~
    我实际操作了一下,发现还是报告错误,还是没有出现GPS小指示图标,不知道是什么原因.上面的解决方案给了我提示,我觉得是模拟器没有开启GPS,在系统设置中启用也没有效果.后来我在模拟器上干脆直接运行google map,这次出现了gps指示图标,再调用获得location的方法就可以了,还要注意,必须指定用gps来定位,如果是别的方式还是会报告错误

    一起学吧部分文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与一起学吧进行文章共享合作。

    广告
    广告
    广告