基本上我有一个 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/