我只有一个设备(HTC HD Deside)用于测试我的应用程序,并且当我想使用]来获取GPS数据时>
locationManager.requestLocationUpdate(criteria,0,0,this); //critera = "gps"
我的GPS图标出现在通知栏中,但“闪烁”,好像这意味着我的设备正在寻找并获取GPS数据。因此,我的应用需要花费过多的“思考”时间,才能成功从GPS获取数据(大约1百万到3百万!)(在图标停止闪烁之前)
所以,我不得不创建类似while的指令:
do{ lastLocation = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER); }while(System.currentTimeMillis() - lastLocation.getTime() > 5000);
谢谢,我敢肯定会得到最近的位置,但是我浪费了太多时间。
有什么问题?是硬件吗?我可以找到一种更好的方法来解决此问题吗?我可以“快速”获得GPS数据吗? :/(1〜5秒)
我只有一个设备(HTC HD Deside)用于测试我的应用,并且当我想使用locationManager.requestLocationUpdate(criteria,0,0,this)获取GPS数据时; // critera =“ gps”我的GPS图标出现在...
当您在建筑物或遮蔽区域内时,GPS传感器可能会花费更多时间。有时,如果您在建筑物内且没有GPS信号可用,则该建筑物始终闪烁并消耗大量电池。尝试利用其他提供程序。
[我认为您在开发位置感知应用之前,应先阅读本http://developer.android.com/guide/topics/location/strategies.html指南。
您是否已连接到数据网络?
GPS提供商有时会消耗电池能量,还需要获取GPS信号,预热硬件,然后获取位置,如果是第一次使用它,可能会花费一些时间。