すべてのプロダクト
Search
ドキュメントセンター

Mobile Platform as a Service:Android SDK の統合

最終更新日:Jan 17, 2025

位置情報サービス(LBS)SDK は、シンプルな LBS インターフェイスのセットです。この LBS API セットを使用して、測位結果を取得できます。

LBS コンポーネントは、ネイティブ AAR モードコンポーネントモードで mPaaS に統合できます。

前提条件

  • ネイティブ AAR モードに基づいてコンポーネントを mPaaS に統合する場合は、まず前提条件と後続の手順を完了する必要があります。詳細については、「プロジェクトに mPaaS を追加する」をご参照ください。

  • コンポーネントに基づいてコンポーネントを mPaaS に統合する場合は、まずコンポーネントベースの統合手順を完了する必要があります。

SDK の追加

ネイティブ AAR モード

プロジェクトで、ロードバランサーコンポーネント管理 (AAR)ネイティブ AAR モードでコンポーネントの依存関係を管理する ページで コンポーネントをインストールします。詳細については、「」をご参照ください。

コンポーネントベースモード

ポータルプロジェクトとバンドルプロジェクトで、ロードバランサーコンポーネント管理 ページで コンポーネントをインストールします。

詳細については、「コンポーネントの依存関係の管理」をご参照ください。

AMAP キーの申請

LBS を使用する前に、AMAP オープン プラットフォームにアクセスしてアカウントを申請し、LBS キーを取得してください。次の図は、キーの例を示しています。

image.png

AndroidManifest.xml ファイルの構成

AMAP 測位キーと AMAP 測位サービスを AndroidManifest.xml ファイルに追加します。

 <!--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)