AWS:: 位置构造库
本单元中更高层次的构件的API是实验性的并正在积极开发中. 在今后任何版本中,它们都须作非背向相容的修改或去除。 这些是 不适用 语义版本 模型和断开的更改 在发行笔记中宣布. 这意味着虽然你可能使用它们,但可能需要更新 当更新到此软件包的更新版本时,您的源代码.
这个模块是 AWS 云开发套件 项目.
Amazon Lace Service 允许您在应用程序中添加位置数据和功能, 应用程序 包括地图、利益点、地理编码、路由、地峡等能力,以及 追踪 Amazon Location提供基于位置的服务,使用来自 全球的,信任的提供者 Esri 和这里。 拥有负担得起的数据、跟踪和地圈 和内置的卫生监测指标,你可以建立精密的 定位应用程序.
地峡收集
Geofence 收集资源允许您在地图上存储和管理 Geofence —— 虚拟边界 . 您可以根据地理栅栏收集资源评估位置, 并在位置时收到通知 更新将跨越地峡收藏中任何地峡的边界.
declare const key: kms.Key;
new location.GeofenceCollection(this, 'GeofenceCollection', {
geofenceCollectionName: 'MyGeofenceCollection', // optional, defaults to a generated name
kmsKey: key, // optional, defaults to use an AWS managed key
});
使用 grant() 或者说 grantRead() 赋予特定身份执行行动权限的方法
地球栅栏收藏:
declare const role: iam.Role;
const geofenceCollection = new location.GeofenceCollection(this, 'GeofenceCollection', {
geofenceCollectionName: 'MyGeofenceCollection',
});
geofenceCollection.grantRead(role);
跟踪器
追踪器存储设备集位置更新 。 追踪器可用于查询设备当前位置或位置历史. 它存储更新,但通过在存储位置之前过滤位置来减少存储空间和视觉噪音.
更多信息见 跟踪器。 。 。 .
要创建跟踪器,请定义 Tracker数字 :
declare const key: kms.Key;
new location.Tracker(this, 'Tracker', {
trackerName: 'MyTracker', // optional, defaults to a generated name
kmsKey: key, // optional, defaults to use an AWS managed key
});
使用 grant(), (中文(简体) ), grantUpdateDevicePositions() 或者说 grantRead() 赋予特定身份执行行动权限的方法
地球栅栏收藏:
declare const role: iam.Role;
const tracker = new location.Tracker(this, 'Tracker', {
trackerName: 'MyTracker',
});
tracker.grantRead(role);
如果想要将跟踪器与地峡收藏联系起来,请定义 geofenceCollections 属性或使用 addGeofenceCollections() 方法.
declare const geofenceCollection: location.GeofenceCollection;
declare const geofenceCollectionForAdd: location.GeofenceCollection;
declare const tracker: location.Tracker;
const tracker = new location.Tracker(this, 'Tracker', {
trackerName: 'MyTracker',
geofenceCollections: [geofenceCollection],
});
tracker.addGeofenceCollections(geofenceCollectionForAdd);
API 密钥
API 密钥是一个关键值,它与您的 AWS 账户中特定的 Amazon 位置服务资源或 API 相关,以及您可以在这些资源上执行的具体行动. 您可以在应用程序中使用 API 键为这些资源向 Amazon 位置 API 发出未经认证的电话 .
更多信息见 使用 API 密钥认证。 。 。 .
要创建 API 密钥,请定义 ApiKey数字 :
new location.ApiKey(this, 'APIKeyAny', {
// specify allowed actions
allowMapsActions: [
location.AllowMapsAction.GET_STATIC_MAP,
],
allowPlacesActions: [
location.AllowPlacesAction.GET_PLACE,
],
allowRoutesActions: [
location.AllowRoutesAction.CALCULATE_ISOLINES,
],
});
说明:
ApiKey仅构建支持 加强地点、路线和地图 API 键允许访问 AWS 管理的地方、路线和地图.
遗产资源
AWS 已发布新 加强地点、路线和地图由于它们使用AWS管理的资源,用户不再需要自己创建地图、地点和路由资源.
因此,以下建筑现在被视为遗产.
更多信息见 开发者指南。 。 。 .
地图
亚马逊定位服务地图资源允许您访问地图的基础地图数据. 您使用带有地图渲染库的地图资源在您的应用程序中添加交互式地图. 您可以根据应用程序的需要,在地图上添加其他功能,如标记(或指针)、路径和多边形区域.
关于实际如何使用地图资源的信息,参见 在您的应用程序中使用 Amazon 位置图。 。 。 .
要创建地图,请定义 Map数字 :
new location.Map(this, 'Map', {
mapName: 'my-map',
style: location.Style.VECTOR_ESRI_NAVIGATION,
customLayers: [location.CustomLayer.POI],
});
使用 grant() 或者说 grantRendering() 赋予特定身份执行行动权限的方法
地图上:
declare const role: iam.Role;
const map = new location.Map(this, 'Map', {
style: location.Style.VECTOR_ESRI_NAVIGATION,
});
map.grantRendering(role);
地点索引
亚马逊定位服务公司的一个关键功能是能够搜索地理定位信息. Amazon Lace通过Place索引资源提供此功能. 地点指数包括: 哪个 数据提供者 用于搜索.
要创建位置索引,请定义 PlaceIndex数字 :
new location.PlaceIndex(this, 'PlaceIndex', {
placeIndexName: 'MyPlaceIndex', // optional, defaults to a generated name
dataSource: location.DataSource.HERE, // optional, defaults to Esri
});
使用 grant() 或者说 grantSearch() 赋予特定身份执行行动权限的方法
地点索引:
declare const role: iam.Role;
const placeIndex = new location.PlaceIndex(this, 'PlaceIndex');
placeIndex.grantSearch(role);
路径计算器
路由计算器资源允许您根据最新的路由网络和您所选择的数据提供者提供的现场交通信息寻找路由并估算出出出行时间.
更多信息见 路线。 。 。 .
要创建路径计算器,请定义 RouteCalculator数字 :
new location.RouteCalculator(this, 'RouteCalculator', {
routeCalculatorName: 'MyRouteCalculator', // optional, defaults to a generated name
dataSource: location.DataSource.ESRI,
});
使用 grant() 或者说 grantRead() 赋予特定身份执行行动权限的方法
路径计算器上 :
declare const role: iam.Role;
const routeCalculator = new location.RouteCalculator(this, 'RouteCalculator', {
dataSource: location.DataSource.ESRI,
});
routeCalculator.grantRead(role);