@aws-cdk/aws-location-alpha

中文文档
2.275.0-alpha.0发布于 2026/10/27Apache-2.0TypeScriptCommonJS零依赖近 30 天下载 7039

AWS: Location 的 CDK 构建库

中文使用文档
文档目录7 节
  1. 地峡收集
  2. 跟踪器
  3. API 密钥
  4. 遗产资源
  5. 地图
  6. 地点索引
  7. 路径计算器

AWS:: 位置构造库


cdk-constructs: Experimental

本单元中更高层次的构件的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);

版本与发布记录

@aws-cdk/aws-location-alpha 共发布 297 个版本,首次发布于 2022/12/08;过去 12 个月发布了 64 个版本。

版本发布日期距今
2.275.0-alpha.0latest2026/10/2712 天前
2.274.0-alpha.02026/10/2018 天前
2.273.0-alpha.02026/10/0929 天前
2.272.0-alpha.02026/09/301 个月前
2.271.0-alpha.02026/09/261 个月前
2.270.0-alpha.02026/09/181 个月前

关于 @aws-cdk/aws-location-alpha 的常见问题

@aws-cdk/aws-location-alpha 是什么?

AWS: Location 的 CDK 构建库

如何安装 @aws-cdk/aws-location-alpha?

在项目目录运行 npm install @aws-cdk/aws-location-alpha,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:constructs(^10.5.0)、aws-cdk-lib(^2.275.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@aws-cdk/aws-location-alpha 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@aws-cdk/aws-location-alpha 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@aws-cdk/aws-location-alpha 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >= 20.0.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@aws-cdk/aws-location-alpha 可以商用吗?

@aws-cdk/aws-location-alpha 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@aws-cdk/aws-location-alpha 的下载量有多少?

根据 npm 官方下载统计,@aws-cdk/aws-location-alpha 在 2026/10/08 – 2026/11/06 这 30 天内被下载 7,039 次,日均约 235 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@aws-cdk/aws-location-alpha 还在维护吗?

最新版本 2.275.0-alpha.0 发布于 2026/10/27(12 天前);至今共发布 297 个版本,其中过去 12 个月发布了 64 个;首次发布于 2022/12/08。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。