Android:GPS定位 Location == null
首先得允许Location 操作,AndroidManifest.xml 中加入代码:
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION" />
在模拟器上获取GPS信息时,使用Location location = LocationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);来获取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 location = LocationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
就能获取到该坐标的位置了
更多相关文章
- Android开发——(二)运行你的APP
- android 获取当前时间精确到毫秒的两种方法
- 让App吐出自己的Crash信息
- Android手机APP测试之环境搭建
- Android--获取SHA1的坑
- Android(安卓)Studio和SDK的下载安装以及个性化设置方法
- smnp-android移植与简洁使用
- Android:开发环境搭建、移植
- 关于获取手机通讯录联系人Contacts被deprecated的修改