AirMapView は、Google Play サービスの有無にかかわらず、デバイスのインタラクティブなマップを可能にするビューの抽象化です。これは、Google Maps V2 や近日中に Amazon Maps V2 を含む複数のネイティブ マップ プロバイダーをサポートするように構築されています。デバイスにサポートされているネイティブ マップ プロバイダがない場合、AirMapView は Web ベースのマップ プロバイダ (現在は Google マップ) にフォールバックします。統合が簡単で、Google Maps 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 を使用します。これらは、アプリのAndroidManifest.xml
ファイルにmeta-data
フィールドとして含まれます。
< 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.