java - 谷歌地图加载覆盖异步时强制关闭

标签 java android google-maps

基本上我有一个 map Activity ,当它启动时,它会启动一个线程,该线程会缓慢加载所有 map 标记(叠加层)。

有时(可能是 75% 的时间)当您尝试在该线程运行时与 map 交互时,它会抛出 RuntimeException 并显示消息“正在向死线程上的处理程序发送消息”。我得出的结论是,如果您等到线程完成后再与 map 交互,就不会抛出此错误。

所以我最初的问题是: map API 是否有已知的线程错误?是否需要一种特定的方式来异步加载 map 数据?也许我需要调用一些通知方法?

基本上,如果我运行线程但注释这一行:

mv.getOverlays().add(pin);

线程正常运行但不添加叠加层,应用程序也不会崩溃。

如果需要,我会展示更多代码。

谢谢

最佳答案

您可能想看看使用 AsyncTask。这里有一些关于这个主题的很好的背景信息:http://developer.android.com/resources/articles/painless-threading.html

关于java - 谷歌地图加载覆盖异步时强制关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4336938/

相关文章:

java - POJO 到 org.bson.Document,反之亦然

java - 使用java和mongodb api从mongodb检索数组

java - JGraphX 图形未显示在 JPanel 中

Android Camera.Parameters setPictureSize 不起作用

android - ScrollView 中的 MapFragment

java - 如何在单击按钮时显示文本

android - 在Gradle构建中运行AspectJ和Firebase性能监视

Android - 无法卸载应用程序

javascript - 如何检查谷歌地图是否已满载?

javascript - 谷歌地图点击事件无法完全正确工作