简介(下载地址)

Ba-LocationAMap 是一款uniapp定位插件(高德)。支持实时定位、后台运行、息屏运行等;支持逆地理地址信息;支持坐标转换;支持坐标转换;支持距离计算;支持电池优化白名单。

本插件自带简单保活,如果需要进一步保活,请使用 Ba-KeepAlive。

截图展示

使用方法

申请并配置高德appkey

在高德开放平台,申请高德appkey。

在 manifest.json 中,配置申请的appkey,如下图:

引入组件

script 中引入组件

 const location = uni.requireNativePlugin('Ba-LocationAMap')

调用

script 中调用(示例参考,可根据自己业务和调用方法自行修改)

 const location = uni.requireNativePlugin('Ba-LocationAMap')export default {data() {return {msgList: [],locationMode: '0',interval: '2000',onceLocation: false,needAddress: true}},onLoad() {},methods: {startL() { //开启定位location.start(res => {console.log(res);uni.showToast({title: res.msg,icon: "none",duration: 3000})}, {locationMode: this.locationMode,interval: this.interval,onceLocation: this.onceLocation,needAddress: this.needAddress});},stopL() { //关闭定位location.stop(res => {console.log(res);uni.showToast({title: res.msg,icon: "none",duration: 3000})});},isStartLocation() { //是否开启定位location.isStartLocation(res => {console.log(res);if (res.data) {this.msgList.unshift(JSON.stringify(res.data))this.msgList.unshift(dateUtil.now())}uni.showToast({title: res.msg,icon: "none",duration: 3000})});},enableBackground() { //开启后台定位location.enableBackground(res => {console.log(res);uni.showToast({title: res.msg,icon: "none",duration: 3000})});},disableBackground() { //关闭后台定位location.disableBackground(res => {console.log(res);uni.showToast({title: res.msg,icon: "none",duration: 3000})});},isEnableBackground() { //是否开启后台定位location.isEnableBackground(res => {console.log(res);if (res.data) {this.msgList.unshift(JSON.stringify(res.data))this.msgList.unshift(dateUtil.now())}uni.showToast({title: res.msg,icon: "none",duration: 3000})});},convertPoint() { //转换坐标location.convertPoint({coordType: 1,longitude: 114.501575,latitude: 38.05544}, res => {console.log(res);if (res.data) {this.msgList.unshift(JSON.stringify(res.data))this.msgList.unshift(dateUtil.now())}uni.showToast({title: res.msg,icon: "none",duration: 3000})});},calculateLineDistance() { //两点间距离计算location.calculateLineDistance({longitude1: 114.501575,latitude1: 38.05544,longitude2: 114.501182,latitude2: 38.056119}, res => {console.log(res);if (res.data) {this.msgList.unshift(JSON.stringify(res.data))this.msgList.unshift(dateUtil.now())}uni.showToast({title: res.msg,icon: "none",duration: 3000})});},isLocationEnable() { //定位开关是否打开location.isLocationEnable(res => {console.log(res);if (res.data) {this.msgList.unshift(JSON.stringify(res.data))this.msgList.unshift(dateUtil.now())}uni.showToast({title: res.msg,icon: "none",duration: 3000})});},goSetting() { //跳转到定位服务设置界面location.goSetting(res => {console.log(res);uni.showToast({title: res.msg,icon: "none",duration: 3000})});},requestIgnoreBattery() { //申请加入电池优化白名单location.requestIgnoreBattery(res => {console.log(res);uni.showToast({title: res.msg,icon: "none",duration: 3000})});},isIgnoringBattery() { //是否加入电池优化白名单location.isIgnoringBattery(res => {console.log(res);if (res.data) {this.msgList.unshift(JSON.stringify(res.data))this.msgList.unshift(dateUtil.now())}uni.showToast({title: res.msg,icon: "none",duration: 3000})});},}}

定位信息监听

在应用生命周期App.vue的onLaunch事件中设置监听:

        onLaunch: function() {var globalEvent = uni.requireNativePlugin('globalEvent');globalEvent.addEventListener('baLocationAMapEvent', function(e) {console.log('baLocationAMapEvent:' + JSON.stringify(e));//这里写你的逻辑,定位信息参数如下});},onShow: function() {},onHide: function() {}

定位信息参数

属性名 类型 说明
longitude Number 经度
latitude Number 纬度
time Number 时间
speed Number 速度
altitude Number 海拔,单位 m
bearing Number 方位
accuracy Number 位置的精确度
locationType String 定位类型
address String 地址

api 列表

方法名 说明
start 开启定位服务
stop 停止定位服务
isStartLocation 是否开启定位
enableBackground 开启后台定位
disableBackground 关闭后台定位
isEnableBackground 是否开启后台定位
convertPoint 转换坐标
calculateLineDistance 两点间距离计算
isLocationEnable 定位开关是否打开
goSetting 跳转到定位服务设置界面
requestIgnoreBattery 申请加入电池优化白名单
isIgnoringBattery 是否加入电池优化白名单

start 方法参数

开启定位服务

属性名 类型 必填 默认值 说明
locationMode Number false 0 定位模式:默认为高精度模式,0 高精度,1 为低功耗模式,2 是仅设备模式
interval Number false 2000 定位间隔:单位毫秒,默认为2000
onceLocation Boolean false false 是否单次定位。默认是false
httpTimeOut Number false 30000 网络请求超时时间。默认为30秒。在仅设备模式下无效
locationCacheEnable Boolean false true 是否使用缓存定位,默认为true
needAddress Boolean false true 是否返回逆地理地址信息。默认是true
isEnableBackground Boolean false false 是否开启后台定位,默认不开启

convertPoint 方法参数

转换坐标

属性名 类型 必填 默认值 说明
longitude Number true 经度
latitude Number true 纬度
coordType Number false 1 坐标来源:1:百度 2:图吧 3:图盟 4:搜搜 5:阿里云 6:谷歌 7:GPS
返回

{“longitude”:114.49514,“latitude”:38.04919}

calculateLineDistance 方法参数

两点间距离计算

属性名 类型 必填 默认值 说明
longitude1 Number true 经度1
latitude1 Number true 纬度1
longitude2 Number true 经度2
latitude2 Number true 纬度2
返回

{“distance”:82.885}

系列插件

图片选择插件 Ba-MediaPicker (文档)

图片编辑插件 Ba-ImageEditor (文档)

文件选择插件 Ba-FilePicker (文档)

应用消息通知插件(多种样式,新增支持常驻通知模式) Ba-Notify(文档)

应用未读角标插件 Ba-Shortcut-Badge (文档)

应用开机自启插件 Ba-Autoboot(文档)

扫码原生插件(毫秒级、支持多码)Ba-Scanner-G(文档)

扫码原生插件 - 新(可任意自定义界面版本;支持连续扫码;支持设置扫码格式)Ba-Scanner(文档)

动态修改状态栏、导航栏背景色、字体颜色插件 Ba-AppBar(文档)

原生sqlite本地数据库管理 Ba-Sqlite(文档)

安卓保活插件(采用多种主流技术) Ba-KeepAlive(文档)

安卓快捷方式(桌面长按app图标) Ba-Shortcut(文档)

自定义图片水印(任意位置) Ba-Watermark(文档)

最接近微信的图片压缩插件 Ba-ImageCompressor(文档)

视频压缩、视频剪辑插件 Ba-VideoCompressor(文档)

动态切换应用图标、名称(如新年、国庆等) Ba-ChangeIcon(文档)

原生Toast弹窗提示(穿透所有界面、穿透原生;自定义颜色、图标 ) Ba-Toast(文档)

图片涂鸦、画笔 Ba-ImagePaint(文档)

pdf阅读(手势缩放、显示页数) Ba-Pdf(文档)

声音提示、震动提示、语音播报 Ba-Beep(文档)

websocket原生服务(自动重连、心跳检测) Ba-Websocket(文档)

短信监听(验证码) Ba-Sms(文档)

智能安装(自动升级) Ba-SmartUpgrade(文档)

监听系统广播、自定义广播 Ba-Broadcast(文档)

监听通知栏消息(支持白名单、黑名单、过滤) Ba-NotifyListener(文档)

全局置灰、哀悼置灰(可动态、同时支持nvue、vue) Ba-Gray(文档)

获取设备唯一标识(OAID、AAID、IMEI等) Ba-IdCode(文档)

实时定位(系统、后台运行、支持息屏)插件 Ba-Location(文档)

实时定位(高德、后台运行、支持息屏、坐标转换、距离计算) Ba-LocationAMap(文档)

窗口小工具、桌面小部件、微件 Ba-AppWidget(文档)

窗口小工具、桌面小部件、微件(日历、时间) Ba-AwCalendarS(文档)

画中画悬浮窗(视频) Ba-VideoPip(文档)

悬浮窗(在其他应用上层显示) Ba-FloatWindow(文档)

悬浮窗(应用内、无需授权) Ba-FloatWindow2(文档)

悬浮窗(悬浮球、动态菜单、在其他应用上层显示) Ba-FloatBall(文档)

uniapp 实时定位(高德、后台运行、支持息屏、坐标转换、距离计算) Ba-LocationAMap相关推荐

  1. uniapp 实时定位(系统、后台运行、支持息屏)插件 Ba-Location

    简介(下载地址) Ba-Location 是一款系统GPS实时定位插件,可后台运行,可以息屏运行,可在内网使用. 本插件自带一种保活技术,如果需要进一步保活,请使用 Ba-KeepAlive. 注意: ...

  2. 鸿蒙系统息屏显示动画,魅族Flyme 9:支持息屏显示 Alive壁纸

    今天下午,魅族带来了Flyme 9发布会.魅族表示,系统作为用户与手机交互的媒介,是用户体验的灵魂.回想起来,每一代Flyme都是经典.Flyme以简洁优雅的设计和创新实用的功能为用户创造极致体验. ...

  3. android10不能熄屏,骁龙835不支持息屏唤醒 华为EMUI 10发布时间确定

    骁龙835不支持息屏唤醒 华为EMUI 10发布时间确定 2019-07-11 17:20:53 0点赞 0收藏 0评论 根据多家媒体报道,小爱同学负责人解答了小米手机的部分疑问. 据悉,小米Note ...

  4. Android 程序后台运行和锁屏运行

    Android 后台服务保活 需求 方案 推广一下我的个人博客小站: Z同学 期待大家的围观 需求 1.在华为手机中应用切换到后台后,打开其他app.需要我的应用后台仍然能够访问http,传输数据. ...

  5. iPhone 13 或将支持息屏显示功能

    近日国外Max Weinbach表示,今年的iPhone 13(或iPhone 12S)很有可能加入息屏显示功能「AOD(Always on Display」.息屏显示可以让用户在息屏状态下查看时间和 ...

  6. iqooz1服务器无响应,iqooz1支持息屏显示吗,iqooz1可以息屏显示吗

    iQOOZ1手机是2020年6月份发布的新手机,许多 客户想对它多一些掌握,那麼iqooz1适用息屏显示吗? 知名品牌型号规格:iqooz1 系统版本:iqoo UI iqooz1适用息屏显示吗 iq ...

  7. android 后台实时定位,实现后台定位,持续无限制定位

    更新记录 1.0.2(2021-04-27) 新增:定位模式传入可高精度定位模式,低功耗定位模式,以及实现gps离线定位(不需要连接网络) 1.0.1(2021-03-17) 1.停止定位增加回调信息 ...

  8. 苹果iPhone 13系列有望支持息屏显示

    Mark Gurman 在今天的Power On专栏中谈到了全新的 iPhone 13(或 12s系列,现距离下一代 iPhone 发布还有不到2个月的时间. Gurman预测,iPhone 13 系 ...

  9. H5实时上传位置定位 pc生成轨迹;h5保持后台运行

    解决方案 1 /**若通过用户操作获取定位无需实时上传定位 可用一下代码 相对定位更加准确*若需求是生成轨迹 如:滴滴打车 顺风车 运动轨迹 以下代码不可行 *在息屏 或 代码再后台运行时 改代码 无 ...

最新文章

  1. ubuntu下载工具aria2 uGet
  2. 架构设计 例子和实践
  3. 架构师进阶之独孤九剑:设计模式详解
  4. Mycat+Mysql 插入数据报错 i[Err] 1064 - partition table, insert must provide ColumnList
  5. 利用钩子技术控制进程创建(附源代码)
  6. opencv绘制基本形状的二值图像
  7. [论文笔记]Augmented SBERT: Data Augmentation Method for Improving Bi-Encoders for Pairwise Sentence
  8. java 顺序执行_java程序执行顺序
  9. doip 源码_汽车DoIP通讯协议的前世今生
  10. 计算机毕业设计Java乡村基层政务管理系统(源码+系统+mysql数据库+Lw文档)
  11. 16秋计算机JAVA第一节课作业(钟永钜)
  12. 华为加班夜宵报销要主管审批?任正非怒斥:多此一举
  13. 论文笔记 AAAI 2021|what the role is vs. What plays the role: Semi-supervised Event Argument Extraction v
  14. 时尚集团副总裁西单解密《时尚江湖》
  15. Android设备上一张图片的显示过程
  16. 3.SpringBoot整合Mybatis(一对多)
  17. python性能测试模块_【Python】模块学习之locust性能测试
  18. 权桂贤发布,张朝阳站台:这才是5G安卓机皇
  19. 2020 豆瓣API使用(代理方法) 解决无key方法 code 104解决方法
  20. 网站建设要怎么选择域名?有哪些小技巧?

热门文章

  1. 计算机数据采集 的优点,浅谈数据采集器的硬件特点及作用
  2. undefined symbol: _dl_sym, version GLIBC_PRIVATE
  3. 求职行测题和性格测试题
  4. 企业邮箱怎么购买?企业邮箱能给公司带来什么好处?
  5. Canfestival 导入EDS,生成文件没有数据名。
  6. linux系统英伟达显卡刷新率,nVidia多显卡多GPU在Linux下的超频设置
  7. Ansible(剧本,角色编写)
  8. YOLOv5实战垃圾分类目标检测
  9. .net NPOI Excel导入:时间格式2022/5/26导入变成26-5月-2022
  10. 基于B/S构架模式的医院门诊系统