uni-app(位置1)

文章目录

  • 一、获取当前的地理位置、速度 uni.getLocation(OBJECT)
  • 二、打开地图选择位置 uni.chooseLocation(OBJECT)
  • 三、使用应用内置地图查看位置。uni.openLocation(OBJECT)


一、获取当前的地理位置、速度 uni.getLocation(OBJECT)

  • App平台 manifest中配置好自己的地图厂商key,在地图厂商的后台,填写正确包名和证书摘要。地图厂商的sdk会在运行时校验key、包名、证书的一致性
  • Web平台 manifest中配置好自己的地图厂商key,使用web接口如涉及白名单,需确保自己的域名在地图厂商那里正确配置了域名白名单
  • 确保在地图厂商那里配额足够
  • 确保在地图厂商那里有周边服务的权限。否则无法获取周围地址
  • 如果运行在微信浏览器中,可以使用微信的jssdk的定位能力。这个是微信向腾讯地图申请的key,开发者无需配置自己的key。
  1. OBJECT 参数说明
    参数名类型必填说明平台差异说明
    typeString默认为 wgs84 返回 gps 坐标,gcj02 返回国测局坐标,可用于 uni.openLocation 和 map 组件坐标,App 和 H5 需配置定位 SDK 信息才可支持 gcj02。
    altitudeBoolean传入 true 会返回高度信息,由于获取高度需要较高精确度,会减慢接口返回速度抖音小程序、飞书小程序、支付宝小程序不支持
    geocodeBoolean默认false,是否解析地址信息仅App平台支持(安卓需指定 type 为 gcj02 并配置三方定位SDK)
    highAccuracyExpireTimeNumber高精度定位超时时间(ms),指定时间内返回最高精度,该值3000ms以上高精度定位才有效果App (3.2.11+)、H5 (3.2.11+)、微信小程序 (基础库 2.9.0+)
    timeoutString默认为 5,定位超时时间,单位秒仅飞书小程序支持
    cacheTimeoutNumber定位缓存超时时间,单位秒;每次定位缓存当前定位数据,并记下时间戳,当下次调用在cacheTimeout之内时,返回缓存数据仅飞书小程序、支付宝小程序支持
    accuracyString默默认为 high,指定期望精度,支持 high,best。当指定 high 时,期望精度值为100m,当指定 best 时期望精度值为20m。当定位得到的精度不符合条件时,在timeout之前会继续定位,尝试拿到符合要求的定位结果仅飞书小程序支持
    isHighAccuracyBoolean开启高精度定位App (3.4.0+)、H5 (3.4.0+)、微信小程序 (基础库 2.9.0+)
    successFunction接口调用成功的回调函数,返回内容详见返回参数说明。
    failFunction接口调用失败的回调函数
    completeFunction接口调用结束的回调函数(调用成功、失败都会执行)
  2. success 返回参数说明
    参数说明
    latitude纬度,浮点数,范围为-90~90,负数表示南纬
    longitude经度,浮点数,范围为-180~180,负数表示西经
    speed速度,浮点数,单位m/s
    accuracy位置的精确度
    altitude高度,单位 m
    verticalAccuracy垂直精度,单位 m(Android 无法获取,返回 0)
    horizontalAccuracy水平精度,单位 m
    address地址信息(仅App端支持,需配置geocode为true)
    <template><view style="padding: 20px;"><button @click="getLocation">获取地理位置</button></view>
    </template><script>
    export default {data() {return {};},onLoad() {},methods: {getLocation() {uni.getLocation({type: 'wgs84',success: function (res) {console.log(res)console.log('当前位置的经度:' + res.longitude);console.log('当前位置的纬度:' + res.latitude);}})}},
    };	
    </script>
    
    在这里插入图片描述
    需要配置权限,若没有配置会有弹窗提示
    在这里插入图片描述
    若没有配置会有弹窗提示
    在这里插入图片描述
    配置完,需要点击允许
    在这里插入图片描述

二、打开地图选择位置 uni.chooseLocation(OBJECT)

  • 如果是cli或离线打包,需要配套升级cli和离线sdk
  • manifest中配置好自己的地图厂商key。web和app都需要。一般标准基座正常,自定义基座和打包后异常,都是这个原因
  • 确保在地图厂商那里配额足够
  • 确保在地图厂商那里有周边服务的权限。否则无法获取周围地址
  • web平台确保自己的域名在地图厂商那里正确配置了域名白名单
    可使用差异:App,H5,微信小程序,支付宝小程序,百度小程序,抖音小程序、飞书小程序,QQ小程序
  1. OBJECT 参数说明
    参数名类型必填说明平台差异说明
    latitudeNumber目标地纬度微信小程序(2.9.0+)、H5-Vue3(3.2.10+)
    longitudeNumber目标地经度微信小程序(2.9.0+)、H5-Vue3(3.2.10+)
    keywordString搜索关键字,仅App平台支持
    useSecureNetworkBoolean是否通过安全网络调用地点搜索、逆地址解析,默认false
    successFunction接口调用成功的回调函数,返回内容详见返回参数说明。
    failFunction接口调用失败的回调函数(获取定位失败、用户取消等情况下触发)
    completeFunction接口调用结束的回调函数(调用成功、失败都会执行)
  2. success 返回参数说明
    参数说明
    name位置名称
    address详细地址
    latitude纬度,浮点数,范围为-90~90,负数表示南纬,使用 gcj02 国测局坐标系。
    longitude经度,浮点数,范围为-180~180,负数表示西经,使用 gcj02 国测局坐标系。
    <template><view style="padding: 20px;"><button @click="getLocation">获取地理位置</button></view>
    </template><script>
    export default {data() {return {};},onLoad() {},methods: {getLocation() {uni.chooseLocation({success: function (res) {console.log(res)console.log('位置名称:' + res.name);console.log('详细地址:' + res.address);console.log('纬度:' + res.latitude);console.log('经度:' + res.longitude);}});}},
    };	
    </script>
    
    在这里插入图片描述
    点击确认后打印的位置
    在这里插入图片描述
    注意:
    • 不同端,使用地图选择时基于的底层地图引擎不一样,详见地图map组件的地图服务商支持。
      • app 中也可以使用百度定位,在 manifest 中配置,打包后生效。
      • app-nvue 里只能用高德定位和Google地图(3.4+),不能用百度地图。另外选择地图、查看地图位置的API也仅支持高德地图和Google地图(3.4+)。所以App端如无特殊必要,建议使用高德地图。
    • H5 端 使用地图和定位相关,需要在 manifest.json 内配置腾讯或谷歌等三方地图服务商申请的秘钥(key)。
    • 微信内置浏览器 中可使用微信js sdk,详见
    • chooseLocation 属于封装型API,开发者若觉得不够灵活,可自行基于原始的 map 组件进行封装。插件市场已经有各种封装样例了。
    • 若 Android App端 位置不准,见上文 uni.getLocation 的注意事项
    • 微信小程序在2023年10月17日之后,使用API需要配置隐私协议

三、使用应用内置地图查看位置。uni.openLocation(OBJECT)

可使用差异:App,H5,微信小程序,支付宝小程序, 百度小程序 ,抖音小程序、飞书小程序,元服务 小红书小程序

  1. OBJECT 参数说明
参数名类型必填说明平台差异说明
latitudeFloat纬度,范围为-90~90,负数表示南纬,使用 gcj02 国测局坐标系
longitudeFloat经度,范围为-180~180,负数表示西经,使用 gcj02 国测局坐标系
scaleInt缩放比例,范围5~18,默认为18微信小程序
nameString位置名支付宝必填
addressString地址的详细说明支付宝必填
successFunction接口调用成功的回调函数
failFunction接口调用失败的回调函数
completeFunction接口调用结束的回调函数(调用成功、失败都会执行)
<template><view style="padding: 20px;"><button @click="getLocation">获取地理位置</button></view>
</template><script>
export default {data() {return {};},onLoad() {},methods: {getLocation() {uni.getLocation({type: 'gcj02', //返回可以用于uni.openLocation的经纬度success: function (res) {console.log(res)const latitude = res.latitude;const longitude = res.longitude;uni.openLocation({latitude: latitude,longitude: longitude,success: function (succ) {console.log(succ, 'success');}});}});}},
};	
</script>

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/21980.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【数据库系统概论】第第12章 并发控制

12.1 并发控制概述 并发控制是指数据库管理系统&#xff08;DBMS&#xff09;通过控制多个事务同时执行&#xff0c;保证数据的一致性和隔离性&#xff0c;避免事务间的相互干扰。 事务串行执行不能充分利用系统资源 并发执行的优点&#xff1a;能够减少处理机的空闲 时间&a…

滚珠花键在使用时需注意什么?

滚珠花键是一种直线运动系统&#xff0c;当花键套利用其中的钢球在经过精密磨削的花键轴上直线运动时&#xff0c;可以传递扭矩。在使用滚珠花键时&#xff0c;需要注意以下几个重要的事项&#xff1a; 1、不要擅自拆卸滚珠花键的各部分&#xff0c;因为这样可能会导致异物进入…

Jenkins 视图(View)

Jenkins 视图(View) 一、视图是什么 Jenkins 视图(View) 如下图中 All、Apps 都是 Jenkisn 中的 View 左侧如果有 New View 或者 点击 All 这一行最右侧的 号&#xff0c;都可以创建视图 二、视图(View)的作用 点击最左侧的 All 可以看到所有的任务 随着项目不断发展&am…

蓝桥杯刷题2.21|笔记

参考的是蓝桥云课十四天的那个题单&#xff0c;不知道我发这个有没有问题&#xff0c;如果有问题找我我立马删文。&#xff08;参考蓝桥云课里边的题单&#xff0c;跟着大佬走&#xff0c;应该是没错滴&#xff0c;加油加油&#xff09; 一、握手问题 #include <iostream&g…

从零开始学习PX4源码9(部署px4源码到gitee)

目录 文章目录 目录摘要1.gitee上创建仓库1.1 gitee上创建仓库PX4代码仓库1.2 gitee上创建子仓库2.固件在gitee部署过程2.1下载固件到本地2.2切换本地分支2.3修改.gitmodules内容2.4同步子模块仓库地址2.5同步子模块仓库地址更新(下载)子模块3.一级子模块和二级子模块的映射关…

微服务SpringCloudAlibaba组件sentinel教程【详解sentinel的使用以及流量控制、熔断降级、热点参数限流等,附有示例+代码】

文章目录 四.Sentinel限流熔断4.1 sentinel介绍4.2 Sentinel 的历史4.3 Sentinel 基本概念资源规则 4.4 Sentinel 功能和设计理念4.4.1 流量控制4.4.2熔断降级什么是熔断降级熔断降级设计理念系统负载保护 4.5 Sentinel 是如何工作的4.6 Sentinel使用4.7 Sentinel 控制台4.8 Sp…

webmin配置终端显示样式,模仿UbuntuDesktop终端

webmin配置终端显示样式&#xff0c;模仿UbuntuDesktop终端 在webmin中&#xff0c;默认情况下是没有图形化桌面的&#xff0c;因此终端界面也不会像 Ubuntu Desktop 那样有预设的紫色背景和颜色主题。不过&#xff0c;你可以通过修改 ~/.bashrc 文件&#xff0c;并结合安装和…

PyTorch-基础(CUDA、Dataset、transforms、卷积神经网络、VGG16)

PyTorch-基础 环境准备 CUDA Toolkit安装&#xff08;核显跳过此步骤&#xff09; CUDA Toolkit是NVIDIA的开发工具&#xff0c;里面提供了各种工具、如编译器、调试器和库 首先通过NVIDIA控制面板查看本机显卡驱动对应的CUDA版本&#xff0c;如何去下载对应版本的Toolkit工…

AWS-SAA中文版题库

一家公司收集多大洲城市的温度、湿度和大气压数据。该公司每天从每个站点收集的平均数据量为500GB。每个站点都有高速互联网连接。该公司希望尽快将所有这些全球站点的数据聚合到一个AmazonS3存储桶中。解决方案必须将操作复杂性降至最低。哪种解决方案满足这些要求&#xff1f…

Git操作整体流程

文章目录 1.Git创建个人仓库2、Git全局配置3、Git本地管理4. Git本地管理常用命令汇总5、使用Git命令将项目提交到远程码云管理6.使用IDEA进行管理7、Idea里面的终端8、关于提交总结 1.Git创建个人仓库 打开https://gitee.com/&#xff0c;登录个人账号&#xff0c;右上角加号…

微相E316实现FM电台监听

前面介绍了基于Matlab、矢量信号器或微相E316、HackRF One实现AM和FM调制解调&#xff0c;今天分享的内容是用微相E316、上位机和Matlab实现FM电台信号监听。注意本文仅用于科研和学习&#xff0c;私自搭建电台属于违法行为。 1.概述 微相E316、上位机和Matlab实现FM电台信号…

【总结】GraphRAG与传统RAG的深度对比及主流项目分析

GraphRAG和传统RAG的区别 GraphRAG和传统RAG都是为了增强大语言模型&#xff08;LLMs&#xff09;在特定领域的能力而发展出的技术&#xff0c;但它们在多个方面存在明显区别。 1. 知识组织方式 传统RAG&#xff1a;通常将大规模文本语料库分割成文本块&#xff0c;再利用嵌入…

SessionBox同一浏览器登录多账号独立IP教程

对于多账号运营的跨境营销人员来说&#xff0c;SessionBox提供了同一浏览器登录多账号的解决方案&#xff0c;但是很多人不仅需要多账号登录&#xff0c;对于登录Facebook、Instagram等账号来说&#xff0c;如何SessionBox与代理配合使用以确保真正的帐户分离更为重要&#xff…

图论 之 迪斯科特拉算法求解最短路径

文章目录 题目743.网络延迟时间3341.到达最后一个房间的最少时间I 求解最短路径的问题&#xff0c;分为使用BFS和使用迪斯科特拉算法&#xff0c;这两种算法求解的范围是有区别的 BFS适合求解&#xff0c;边的权值都是1的图中的最短路径的问题 图论 之 BFS迪斯科特拉算法适合求…

Docker+Dify部署DeepSeek-r1本地知识库

安装配置Docker Desktop 软件下载 Docker Desktop版本:4.38.0.181591 Docker Desktop下载地址:Docker: Accelerated Container Application Development 或者从这里下载:DockerDesktop-4.38.0.181591资源-CSDN文库 点击图下所示位置,下载windows-AMD64版本软件 启用Hy…

ubuntu ffmpeg 安装踩坑

ffmpeg 安装踩坑 安装命令: sudo apt update sudo apt install ffmpeg如果以上命令没有报错&#xff0c;那么恭喜你很幸运&#xff0c;可以关闭这篇文章了&#xff01; 如果跟我一样&#xff0c;遇到如下报错&#xff0c;可以接着往下看&#xff1a; 报错信息&#xff1a; …

如何通过Windows环境远程控制MusicGPT在线生成高质量AI音乐

文章目录 前言1. 本地部署2. 使用方法介绍3. 内网穿透工具下载安装4. 配置公网地址5. 配置固定公网地址 前言 在这个快节奏的时代&#xff0c;音乐不仅是心灵的慰藉&#xff0c;更是创意的源泉。试想一下&#xff0c;在忙碌的工作间隙或悠闲的周末午后&#xff0c;只需轻敲几行…

大数据组件(四)快速入门实时数据湖存储系统Apache Paimon(3)

Paimon的下载及安装&#xff0c;并且了解了主键表的引擎以及changelog-producer的含义参考&#xff1a; 大数据组件(四)快速入门实时数据湖存储系统Apache Paimon(1) 利用Paimon表做lookup join&#xff0c;集成mysql cdc等参考&#xff1a; 大数据组件(四)快速入门实时数据…

Spring面试题2

1、compareable和compactor区别 定义与包位置:Comparable是一个接口&#xff0c;位于java.lang包,需要类去实现接口&#xff1b;而Compactor是一个外部比较器&#xff0c;位于java.util包 用法&#xff1a;Comparable只需要实现int compareTo(T o) 方法&#xff0c;比较当前对…

react(9)-redux

使用CRA快速创建react项目 npx create-react-app react-redux 安装配套工具 npm i reduxjs/toolkit react-redux 启动项目 在创建项目时候会出现一个问题 You are running create-react-app 5.0.0, which is behind the latest release (5.0.1). We no longer support…