AirMapView
v2.1.1
AirMapView 是一种视图抽象,可为具有或不具有 Google Play 服务的设备提供交互式地图。它旨在支持多个本地地图提供商,包括 Google Maps V2 和即将推出的 Amazon Maps V2。如果设备没有任何受支持的本机地图提供商,AirMapView 将回退到基于网络的地图提供商(当前为 Google 地图)。它易于集成,是 Google 地图 V2 软件包的直接替代品。 AirMapView 的原作者是 Nick Adams。
通过 Gradle 抓取:
compile ' com.airbnb.android:airmapview:1.8.0 '
Sonatype 的snapshots
存储库中提供了开发版本的快照。
该项目包括一个使用 AirMapView 的示例应用程序。示例应用程序允许在地图提供程序之间切换,举例说明添加地图标记,并显示各种回调信息。示例项目可以手动构建,也可以下载 APK。
在布局文件中定义AirMapView
< com .airbnb.android.airmapview.AirMapView
android : id = " @+id/map_view "
android : layout_width = " match_parent "
android : layout_height = " match_parent " />
在代码中初始化
mapView = ( AirMapView ) findViewById ( R . id . map_view );
mapView . initialize ( getSupportFragmentManager ());
添加标记/折线/多边形
map . addMarker ( new AirMapMarker ( latLng , markerId )
. setTitle ( "Airbnb HQ" )
. setIconId ( R . drawable . icon_location_pin ));
要在 AirMapView 中使用 Mapbox Web 地图,您需要注册 Mapbox 的免费帐户。从那里,您将在 AirMapView 应用程序中使用访问令牌和地图 ID。然后它们作为meta-data
字段包含在应用程序的AndroidManifest.xml
文件中。
< meta-data
android : name = " com.mapbox.ACCESS_TOKEN "
android : value =ACCESS_TOKEN/>
< meta-data
android : name = " com.mapbox.MAP_ID "
android : value =MAP_ID/>
对于 AirMapView,要使用 Google Maps v2 SDK 支持本机 Google 地图,您仍然需要按照此处所述设置 Google Maps SDK。请遵循除有关添加地图的说明之外的所有说明,因为 AirMapView 会为您处理这一事项。有关如何设置地图 SDK 的更多信息,请参阅示例应用程序。
Copyright 2015 Airbnb, Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.