从存储在远程服务器中的地址创建标记

create Markers from Address stored in a remote server

我必须在我的 android 应用程序中向地图添加一些标记。 我必须从我的数据库(在 altervista 中)获取所有地址并从中创建标记,但我不知道该怎么做。

我是否必须将地址存储在数组、ArrayList 或 Map 中?

有人可以帮助我吗?

对不起我的英语。

首先,您需要创建一个 class(Activity) 来实现 OnMapReadyCallback.

像这样:

public class MapsActivity extends FragmentActivity implements OnMapReadyCallback

或者您可以只使用 android 工作室助手来创建它:

在 Activity 中,您需要从数据库中检索地址并保存在数组中。稍后您需要使用例如 GeoCoder 库转换没有坐标的地址:(使用 bucle 转换所有并将其保存在二维数组中)

            try {
                    String locationName = String.valueOf(et.getText());
                    List<Address> listOfAddress = gc.getFromLocationName(locationName, 1);
                    Address address = listOfAddress.get(0);
                    double latitude = address.getLatitude();
                    double longitude = address.getLongitude();

                    coords= new LatLng(latitude, longitude);

                } catch (IOException e) {
                    e.printStackTrace();
                }

后面你只需要在地图上添加标记。

    mMap = googleMap;
    mMap.addMarker(new MarkerOptions().position(coords).title("Marker name"));

希望对你有帮助。