Need to configure your backend?See Build a Backend →
Amazon Location Service SDKを使用する
Amplify Geoカテゴリで使用されるAWSサービスで利用可能でない機能が必要な場合は、エスケープハッチが提供されているため、そのサービスへの参照を取得できます。
注: CDKを使用してGeoリソースをプロビジョニングした場合、IAMポリシーはライブラリで必要なアクションのみを許可するようにスコープされます。 エスケープハッチのユースケースに応じて、認可パーミッションを調整してください。
import android.util.Log;
import androidx.annotation.NonNull;
import com.amplifyframework.core.Amplify;import com.amplifyframework.geo.location.AWSLocationGeoPlugin;
import aws.sdk.kotlin.services.location.LocationClient;import aws.sdk.kotlin.services.location.model.ListMapsRequest;import aws.sdk.kotlin.services.location.model.ListMapsResponse;import kotlin.Unit;import kotlin.coroutines.Continuation;import kotlin.coroutines.CoroutineContext;import kotlinx.coroutines.GlobalScope;// プラグインへの参照を取得AWSLocationGeoPlugin geoPlugin = (AWSLocationGeoPlugin) Amplify.Geo.getPlugin("awsLocationGeoPlugin");LocationClient locationClient = geoPlugin.getEscapeHatch();
// クライアントを使用してLocation Mapsエンドポイントに新しいリクエストを直接送信ListMapsRequest request = ListMapsRequest.Companion.invoke(requestBuilder -> Unit.INSTANCE);locationClient.listMaps(request, new Continuation<ListMapsResponse>() { @NonNull @Override public CoroutineContext getContext() { return GlobalScope.INSTANCE.getCoroutineContext(); }
@Override public void resumeWith(@NonNull Object resultOrException) { Log.i("MyAmplifyApp", resultOrException.toString()); }});import android.util.Logimport aws.sdk.kotlin.services.location.LocationClientimport aws.sdk.kotlin.services.location.model.ListMapsRequestimport com.amplifyframework.core.Amplify// Amazon Location Serviceクライアントへの参照を取得val geoPlugin = Amplify.Geo.getPlugin("awsLocationGeoPlugin")val locationClient = geoPlugin.escapeHatch as LocationClient
// クライアントを使用してLocation Mapsエンドポイントに新しいリクエストを直接送信val request = ListMapsRequest { }val response = locationClient.listMaps(request)Log.i("MyAmplifyApp", response.entries.toString())ドキュメントリソース
マップ
場所
デバイストラッキング