我尝试使用ScheduledExecutorService每隔30秒向我的Google地图添加/删除标记。
ScheduledExecutorService scheduledExecutorService = Executors.newSingleThreadScheduledExecutor();
scheduledExecutorService.scheduleAtFixedRate(new Runnable() {
@Override
public void run() {
runOnUiThread(new Runnable() {
@Override
public void run() {
mapObjects();
}
});
}
}, 0, 30, TimeUnit.SECONDS);
我的mapObjects()
private void mapObjects() {
mMap.clear();
mapThings();
}
我的mapThings()
private void mapThings() {
for (MarkerOptions markerOptions : mappedThings.values()) {
mMap.addMarker(markerOptions);
}
}
我的mapObjects()方法有效,因为我在onMapReady中的executor服务之外运行它,它工作正常。 但是在计时器中,它不起作用。