Penyesuaian Migrasi untuk Android Consumer SDK v1.0

Penyesuaian Penanda

Dalam Consumer SDK versi sebelumnya, Anda menggunakan objek MarkerStyleOptions Consumer SDK untuk menyesuaikan properti gaya penanda. Di Consumer SDK v1.0, Anda langsung menggunakan objek MarkerOptions dari Maps SDK.

// Centering the marker anchor at (0.5, 0.5) is recommended.
// For vehicle markers, set flat to true to allow the vehicle marker to freely
// rotate flat on the map (rather than always have it face the camera).
MarkerOptions vehicleMarkerOptions = new MarkerOptions()
    .flat(true)
    .anchor(0.5f, 0.5f)
    .icon(vehicleIcon)
    .zIndex(1.0f);
consumerMapStyle.setMarkerStyleOptions(MarkerType.TRIP_VEHICLE);

ConsumerMapStyle menampilkan opsi gaya default yang ditentukan SDK untuk jenis penanda tertentu jika gaya belum ditetapkan atau jika opsi gaya telah ditetapkan ke null.

// ConsumerMapStyle returns the SDK-set default style options if none has been set yet.
MarkerOptions defaultPickupPointStyleOptions = consumerMapStyle.getMarkerStyleOptions(MarkerType.PICKUP_POINT);

// Setting the style to null reverts the style back to the SDK-set default properties.
consumerMapStyle.setMarkerStyleOptions(MarkerType.PICKUP_POINT, /* markerStyleOptions= */ null);
MarkerOptions defaultPickupPointStyleOptions = consumerMapStyle.getMarkerStyleOptions(MarkerType.PICKUP_POINT);

Jika tidak ingin membuat gaya baru dari awal, Anda dapat mengubah gaya defaultnya. Contoh berikut hanya mengubah ikon pengambilan dan menggunakan setelan default SDK untuk opsi penanda lainnya.

// getMarkerStyleOptions returns the default pickup point style options, since
// the custom style hasn't been set yet.
MarkerOptions pickupPointStyleOptions =
  consumerMapStyle.getMarkerStyleOptions(MarkerType.PICKUP_POINT);
// Modify the icon value and set the style.
consumerMapStyle.setMarkerStyleOptions(
  pickupPointStyleOptions.icon(pickupPointIcon));

Penyesuaian Polyline

Pada Consumer SDK versi sebelumnya, Anda menggunakan objek PolylineStyleOptions Consumer SDK untuk menyesuaikan properti gaya polyline. Di Consumer SDK v1.0, Anda menggunakan objek PolylineOptions dari Maps SDK untuk menyesuaikan properti gaya polyline dasar dan objek TrafficStyle untuk menyesuaikan warna traffic polyline.

Polyline traffic tersedia dalam varian alfa Consumer SDK v1.0. Jika traffic terlihat, warna polyline dasar akan diganti oleh warna traffic. Traffic tidak terlihat secara default. Kolom di TrafficStyle yang tidak ditetapkan akan diisi oleh nilai default yang ditentukan SDK.

// PolylineOptions is from Maps SDK
PolylineOptions polylineOptions = new PolylineOptions()
  .color(color)
  .width(width)
  .geodesic(geodesic)
  .startCap(startCap)
  .endCap(endCap)
  .zIndex(zIndex);
consumerMapStyle.setPolylineStyleOptions(
  PolylineType.ACTIVE_ROUTE, polylineOptions);

// TrafficStyle is from ConsumerSDK
TrafficStyle trafficStyle = TrafficStyle.builder()
  .setTrafficVisibility(true)
  .setTrafficColor(SpeedType.NO_DATA, Color.GREY)
  .setTrafficColor(SpeedType.NORMAL_VALUE, Color.BLUE)
  .setTrafficColor(SpeedType.SLOW_VALUE, Color.ORANGE)
  .setTrafficColor(SpeedType.TRAFFIC_JAM, Color.RED)
  .build();
consumerMapStyle.setPolylineTrafficStyle(PolylineType.ACTIVE_ROUTE, trafficStyle);

ConsumerMapStyle menampilkan opsi gaya default SDK untuk jenis polyline tertentu jika belum ada yang ditetapkan, atau jika opsi gaya ditetapkan ke null. Hal ini berlaku untuk PolylineOptions dasar dan TrafficStyle.

// ConsumerMapStyle returns the SDK's default style options if none has been set yet.
PolylineOptions defaultActiveRouteStyleOptions = consumerMapStyle.getPolylineStyleOptions(PolylineType.ACTIVE_ROUTE);

// Setting the style to null reverts the style back to the SDK-set default properties.
consumerMapStyle.setPolylineStyleOptions(
  PolylineType.ACTIVE_ROUTE, /* polylineStyleOptions= */ null);
PolylineOptions defaultActiveRouteStyleOptions =
  consumerMapStyle.getPolylineStyleOptions(PolylineType.ACTIVE_ROUTE);

Jika tidak ingin membuat gaya baru dari awal, Anda dapat mengubah gaya defaultnya. Contoh berikut hanya mengubah warna polyline rute aktif dasar, dan menggunakan setelan gaya default SDK untuk opsi penanda lainnya.

// Only customize the remaining route polyline color.
PolylineOptions remainingRouteStyleOptions =
     consumerMapStyle.getPolylineStyleOptions(PolylineType.REMAINING_ROUTE);
consumerMapStyle.setPolylineStyleOptions(
  remainingRouteStyleOptions.color(Color.DARK_BLUE));