我对GoogleWrapperSample的OpenSteetMap有一个问题(我使用了osmdroid最新的jar - 3.0.8)。它编译得很好,但是仿真器(GoogleAPI2.2设备)发出了“”消息,而没有其他任何信息。没有错误/警告,而且由于它是osmdroid类中的记录器,所以我只能接收一些日志信息。LogCat给出了如下内容:
02-14 13:21:20.246: W/System.err(968): 38 [main] INFO org.osmdroid.views.MapView - Using tile source: org.osmdroid.tileprovider.tilesource.XYTileSource@44eb5260
02-14 13:21:20.316: W/System.err(968): 113 [main] INFO org.osmdroid.tileprovider.modules.MapTileFileStorageProviderBase - sdcard state: mounted
02-14 13:21:20.336: W/System.err(968): 129 [main] INFO org.osmdroid.tileprovider.modules.MapTileFileStorageProviderBase - sdcard state: mounted
02-14 13:21:30.166: I/dalvikvm(968): threadid=3: reacting to signal 3
02-14 13:21:30.207: I/dalvikvm(968): Wrote stack traces to '/data/anr/traces.txt'有人查到这个样本了吗?我不知道如何解决这个问题。
也许,它与通过网络获取OSM块有某种联系--我们有代理连接,因此https和SSL端口不可用(但是设备上的所有网络都是正常的)。
UPD.
对于HTC的愿望,它工作正常,但OSM地图是不可用的-只有一个网格。另一方面,谷歌地图是可以的。
LogCat包含以下内容:
02-15 14:47:00.074: W/System.err(2106): 6 [main] INFO org.osmdroid.views.MapView - Using tile source: org.osmdroid.tileprovider.tilesource.XYTileSource@46361618
02-15 14:47:00.084: W/System.err(2106): 23 [main] INFO org.osmdroid.tileprovider.modules.MapTileFileStorageProviderBase - sdcard state: mounted
02-15 14:47:00.094: W/System.err(2106): 26 [main] INFO org.osmdroid.tileprovider.modules.MapTileFileStorageProviderBase - sdcard state: mounted
02-15 14:47:00.184: D/dalvikvm(2106): GC_FOR_MALLOC freed 4349 objects / 315536 bytes in 33ms
02-15 14:47:00.214: D/dalvikvm(2106): GC_EXTERNAL_ALLOC freed 317 objects / 14952 bytes in 28ms
02-15 14:47:00.224: W/System.err(2106): 160 [main] INFO org.osmdroid.tileprovider.MapTileProviderBase - rescale tile cache from 0 to 14
02-15 14:47:00.234: W/System.err(2106): 170 [main] INFO org.osmdroid.tileprovider.MapTileProviderBase - Finished rescale in 10ms
02-15 14:47:00.284: I/MapActivity(2106): Handling network change notification:CONNECTED
02-15 14:47:00.284: E/MapActivity(2106): Couldn't get connection factory client在模拟器上没有任何进展。我认为“无法得到连接工厂客户”是我的问题的原因,但不知道如何解决这个问题。
发布于 2012-02-15 09:01:16
有两种情况可能发生应用程序未响应(ANR):
ANR的常见原因是(停滞)网络操作或昂贵的计算。关于如何解决这个问题有很多帖子(例如这里或这里),但是最大的帮助可能是Android。
我快速查看了示例代码,我不确定,但是在onResume()中调用的onResume()方法可能要花费太长时间。您可以通过注释这一行来测试这一点。否则,检查模拟器上的traces.txt文件,寻找线索和/或将日志语句添加到代码中,以确定哪些操作花费的时间过长。
至于您的“无法获得连接工厂客户端”错误,这里已经回答了这个问题
https://stackoverflow.com/questions/9287959
复制相似问题