Android 安卓2.2应用程序:30分钟后没有gps信号。30分钟后再次工作,什么也不做
我正在开发HTC Legend,并尝试构建自己的gps日志应用程序。除了我在每一条赛道上都有30分钟的空档之外,一切都如预期的那样进行 我得不到gps数据的时间间隔总是在30到60分钟之间,所以在30分钟的活动之后,我有30分钟没有gps数据。在不做任何事情(甚至不重启应用程序)的情况下,它会在30分钟的休息后再次开始收集数据 有人对此有解释吗?它快把我逼疯了 忘了提到我用直接的requestLocationUpdates收集数据,但这里没有问题 编辑:按要求编写示例代码:Android 安卓2.2应用程序:30分钟后没有gps信号。30分钟后再次工作,什么也不做,android,gps,Android,Gps,我正在开发HTC Legend,并尝试构建自己的gps日志应用程序。除了我在每一条赛道上都有30分钟的空档之外,一切都如预期的那样进行 我得不到gps数据的时间间隔总是在30到60分钟之间,所以在30分钟的活动之后,我有30分钟没有gps数据。在不做任何事情(甚至不重启应用程序)的情况下,它会在30分钟的休息后再次开始收集数据 有人对此有解释吗?它快把我逼疯了 忘了提到我用直接的requestLocationUpdates收集数据,但这里没有问题 编辑:按要求编写示例代码: privat
private LocationListener ll = new LocationListener(){
@Override
public void onLocationChanged(Location loc) {
}
@Override
public void onProviderDisabled(String arg0) {
}
@Override
public void onProviderEnabled(String arg0) {
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
}
};
这是相应的NMEA侦听器,因为我将处理原始GPS数据:
GpsStatus.NmeaListener nl = new GpsStatus.NmeaListener() {
@Override
public void onNmeaReceived(long timestamp, String nmea) {
/*
* Use patcher and matcher to find a proper GPRMC sentence and remove symbols at the end like \n, # etc.
*/
m = p.matcher(nmea);
Log.d(LocationLoggerApp.TAG, "Time for a break...");
//Notify activity that app is ready for upload
broadcastIntent.putExtra("LOG", "Got valid GPRMC sentence");
sendBroadcast(broadcastIntent);
}
};
这里我们有onStart函数中的一行,上面的内容是“加载的”:
问候,,
Martin有没有可能得到一些代码示例?我的第一个建议是检查您是否正确设置了minTime和MindDistance参数
public void requestLocationUpdates (long minTime, float minDistance, Criteria criteria, PendingIntent intent)
我已经在我的第一篇文章中添加了样本。但这绝对不是问题所在,因为它在30分钟休息前后都有效。如果minTime和MindDistance是错误的,那么我根本不应该获取数据。或者我在这里想的不对?我看不到任何明显的位置数据会导致30分钟打开/30分钟关闭。正如你所说,这种情况经常发生,我认为你应该进行一些测试。首先,我会尝试从Android Market下载GPS测试(免费版),并在运行日志的同时运行它。查看当两个都运行一小时时,GPS定位是否在后半小时丢失。如果是这样的话,你知道不是你的程序出了问题。
public void requestLocationUpdates (long minTime, float minDistance, Criteria criteria, PendingIntent intent)