核心知识点对应 案例代码包里 所有场景1. 核心定位 API对应 demo01、demo02表格API 名称功能描述关键注意点对应 Demo 页面wx.getLocation获取当前设备经纬度、速度、定位精度需配置权限 声明隐私接口坐标系用 gcj02demo01/getLocationwx.chooseLocation调起地图选点返回位置名称、地址、经纬度需配置权限 声明隐私接口无需手动定位demo01/chooseLocationwx.openLocation打开微信原生地图展示指定位置可导航无需声明隐私接口需先获取经纬度依赖 getLocationdemo02/openLocation2. 地图组件高级控制对应 demo03核心前提必须在页面 onReady 生命周期中通过wx.createMapContext(mapId)创建地图上下文mapId 对应 wxml 中 map 标签的 id。常用控制方法对应 demo03 各子页面getCenterLocation获取地图当前中心点经纬度moveToLocation将地图视角移动到用户当前定位translateMarker动画平移地图上的标记点如模拟轨迹includePoints调整地图视角让多个坐标点都显示在视野内getRegion获取地图当前视野范围东北 / 西南角坐标getScale获取地图当前缩放级别数值越大显示越详细3. 权限配置报错关键对应正确 app.json1权限配置app.json 中permission: { scope.userLocation: { desc: 用于获取您的位置信息 // 授权提示语不可省略 } }2隐私接口声明app.json 中requiredPrivateInfos: [ getLocation, chooseLocation // 仅这两个openLocation无需声明易错点 ]3其他可选配置requiredBackgroundModes: [location], // 后台定位可选按需添加 lazyCodeLoading: requiredComponents // 适配苹果手机避免定位失效学习内容一、基础位置获取demo011. wx.getLocation功能获取设备当前的地理位置信息获取数据经度、纬度、速度、定位精度使用前提需要用户授权定位权限坐标系必须使用 gcj02 火星坐标系2. wx.chooseLocation功能打开微信地图界面手动选择一个位置获取数据位置名称、详细地址、经度、纬度特点自带地图搜索、选点功能无需自行开发地图界面使用前提需要用户授权定位权限二、 查看位置demo02wx.openLocation功能调用微信内置地图查看指定的地理位置作用展示目标位置支持导航、查看周边等功能使用依赖必须先获取经纬度通常搭配 getLocation 使用特点无需声明隐私接口无需创建地图组件直接调用三、地图组件高级控制(demo03)核心前提必须使用map地图组件必须在页面onReady生命周期创建地图上下文对象mapCtx1. getCenterLocation功能获取当前地图显示区域的中心点经纬度2. moveToLocation功能将地图视角移动到当前用户定位位置效果地图自动居中并显示用户所在位置3. translateMarker功能平移动地图上的标记点marker特点支持动画效果可模拟标记点移动轨迹4. includePoints功能自动调整地图视野使多个坐标点全部显示在屏幕内适用场景展示多个点位、路线、多门店等5. getRegion功能获取当前地图的视野范围返回数据东北角、西南角经纬度坐标6. getScale功能获取当前地图的缩放级别说明缩放值越大地图显示越详细四、核心知识点权限配置必须在 app.json 声明定位权限描述隐私接口getLocation、chooseLocation 必须在 requiredPrivateInfos 中声明坐标系统一所有定位相关功能必须使用 gcj02 坐标系生命周期地图上下文必须在 onReady 中创建真机调试定位、地图等功能必须在真机上正常运行模拟器有限制