使用google map+模拟器发送地理位置信息时遇到的奇怪问题

lgw15046 2012-03-28 12:08:26
写了一个谷歌地图的小程序,通过模拟器发送地理位置信息,如果地理位置有更新,把更新的GEOPOINT加入到一个list里面,
 
public final LocationListener mLocationListener =
new LocationListener()
{
@Override
public void onLocationChanged(Location location)
{

gp2=getGeoByLocation(location);//gp2是最新的更新点
pointsList.add(gp2);

Log.e("the gp2 is ", gp2.getLatitudeE6()+"||"+gp2.getLongitudeE6()+"||"+pointsList.size());
}

问题1:当我把这个程序关掉时,在Emulator Control发送新的位置信息时,在LogCat还能看到gp2.getLatitudeE6()+"||"+gp2.getLongitudeE6()+"||"+pointsList.size()+"||"+"testValue="+testValue); 这条打印信息,这是为什么?
问题2:当我程序关掉时发送新的位置信息后,再打开该程序,再发送新的位置信息,Log里面一次打印出两条log,比如说,我在关掉程序后,发送了2条新的位置信息,此时打印出来的是03-28 03:53:46.259: E/the gp2 is(815): 22001598||113972458||2,也就是说此时pointsList里面有两个GeoPoint,这个时候,我再把程序启动,再发送位置信息,打印出来的是03-28 04:10:16.888: E/the gp2 is(815): 22001898||113972458||5
03-28 04:10:16.898: E/the gp2 is(815): 22001898||113972458||2
这两条同时打印出来,
找不到头绪,到底怎么回事呢?

...全文
187 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
lgw15046 2012-03-28
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

汗,就像你写一个Service,如果不关掉这个服务,那这个服务是不是同样在运行呢!
[/Quote]
谢谢回复,那到底是LocationListener相当于一个Service呢?还是其它?
执笔写年华 2012-03-28
  • 打赏
  • 举报
回复
汗,就像你写一个Service,如果不关掉这个服务,那这个服务是不是同样在运行呢!
lgw15046 2012-03-28
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

调用void

removeUpdates(LocationListener listener)了么?
[/Quote]
谢谢ultrapro,我程序里果然是没调用removeUpdates(LocationListener listener),我现在在mapActivity的onPause()里面调用,关掉程序之后就不会有打印信息了,但是我还想问一下,如果不调用removeUpdates,为什么程序关掉的时候还能打印那我个程序的LOG语句呢?
儿大不由爷 2012-03-28
  • 打赏
  • 举报
回复
调用void

removeUpdates(LocationListener listener)了么?

80,493

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧