ロケーション SDK は、シンプルな位置情報サービス (LBS) インターフェイスのセットを提供します。ロケーション API を使用して、位置情報結果を取得できます。
ロケーションコンポーネントは、ネイティブ AAR モードとコンポーネントモードの 2 つの統合メソッドをサポートしています。
前提条件
ネイティブ AAR メソッドを使用して統合する場合、まず「プロジェクトへの mPaaS の追加」の手順を完了する必要があります。
コンポーネントベースのメソッドを使用して統合する場合、まずコンポーネントモードの「フロー」を完了する必要があります。
SDK の追加
ネイティブ AAR モード
コンポーネント管理 (AAR) を使用して、プロジェクトにロケーションコンポーネントをインストールします。詳細については、「AAR コンポーネント管理」をご参照ください。
コンポーネントモード
コンポーネント管理から、Portal および Bundle プロジェクトにロケーションコンポーネントをインストールします。詳細については、「コンポーネントの依存関係の管理」をご参照ください。
Amap キーのリクエスト
LBS を使用する前に、Amap オープンプラットフォームからアカウントをリクエストし、ロケーションキーを取得する必要があります。キーの例を以下に示します。

AndroidManifest の設定
AndroidManifest.xml ファイルに、Amap ロケーションキーと Amap ロケーションサービスを追加します。
<!--Amap ロケーションキー-->
<meta-data
android:name="com.amap.api.v2.apikey"
android:value="ご自身の Amap キーを入力してください" />
<!--Amap ロケーションサービス-->
<service android:name="com.amap.api.location.APSService"></service>バージョン 10.1.68.18 以降、ロケーションコンポーネントの自動チェックイン機能はデフォルトで無効になっています。自動チェックインを有効にするには、次の構成を AndroidManifest.xml ファイルに手動で追加してください。
<meta-data android:name="com.mpaas.lbs.autoCheckIn" android:value="true" />API リファレンス
位置情報機能の呼び出し
デフォルトでは、位置情報は地区/県レベルまで解決されます。ストリートレベルの詳細については、「その他の関連 API」をご参照ください。
LBSLocationManagerProxy.getInstance().requestLocationUpdates(MainActivity.this, new LBSLocationListener() {
@Override
public void onLocationUpdate(LBSLocation lbsLocation) {
Toast.makeText(MainActivity.this, "lbsLocation is " + lbsLocation.getAddress(), Toast.LENGTH_LONG).show();
}
@Override
public void onLocationFailed(int i) {
Toast.makeText(MainActivity.this,
"onLocationFailed" + i, Toast.LENGTH_SHORT).show();
}
});その他の関連 API
/**
* 位置情報の更新を登録します。位置情報は地区レベルまで正確です。
*/
public void requestLocationUpdates(Context context, LBSLocationListener locationListener)
/**
* 位置情報の更新を登録します。ストリートレベルの精度が必要な場合は、この API を使用します。
* gpsEnable: false は地区レベルの精度を示します。true はストリートレベルの精度を示し、より高い精度を提供しますが、より多くのリソースを消費します。
* miniInterval: 位置情報の更新間隔。例: LBSLocationManagerProxy.DEFAULT_LOCATION_INTERVAL。
* overtime: 位置情報のタイムアウト期間。例: LBSLocationManagerProxy.LOCATION_TIME_OUT。
* isNeedAddress: true は逆ジオコーディングが必要であることを示します。false は緯度と経度のみが必要であることを示します。
* bizType: ビジネスタイプ。null に設定します。
*/
public void doRequestLocationUpdates(Context context, boolean gpsEnable, LBSLocationListener locationListener, long miniInterval, long overtime, boolean isNeedAddress, String bizType)
// 位置情報登録のコールバックを削除します。
public void removeUpdates(Context context, LBSLocationListener listener)
// 最後に成功した既知の位置情報を取得します。
public LBSLocation getLastKnownLocation(Context context)