首页 > 其他分享 >【快应用】如何避免通知栏提示快应用一直获取地理位置

【快应用】如何避免通知栏提示快应用一直获取地理位置

时间:2023-08-18 16:58:47浏览次数:108  
标签:geolocation 地理位置 subscribe 获取 unsubscribe 应用 data

​ 【关键词】

地理位置、subscribe、unsubscribe

 

【问题背景】

快应用中调用geolocation.subscribe接口获取地理位置,即使在定位完成后,会在通知栏一直显示某某快应用在获取地理位置,为了避免用户认为一直在获取他的位置,导致用户的反感,这里提供一种方式来去掉这种提示。

cke_256.png

 

【解决方案】

geolocation.subscribe接口是监听地理位置的,每次位置信息发生变化,都会被回调。因此建议在定位完成后调用geolocation.unsubscribe()取消监听,在下次获取位置时再重新调用即可。

在定位成功触发callback回调时调用unsubscribe取消监听。

代码实现:

      geolocation.subscribe({

        callback: function (data) {

          console.log('handling success: longitude = ' + data.longitude + ', latitude = ' + data.latitude + ', accuracy = ' + data.accuracy + ', time = ' + data.time);

          setTimeout(() => {

                  geolocation.unsubscribe();

          }, 1500);

        },

        fail: function (data, code) {

          console.log('handling fail, code = ' + code);

        }

      })

截图:

位置定位成功后,通知栏就不再显示获取地理位置了。

cke_3370.png​​

 

【衍生问题】

快应用获取地理位置时,此时如果把快应用退到后台,会发现通知栏也会一直提示获取地理位置,这种情形建议在onhide中调用unsubscibe接口取消监听,这样就不会出现了。

   onHide(options) {

      '// Do something initial when hide.'

      geolocation.unsubscribe();

    },

标签:geolocation,地理位置,subscribe,获取,unsubscribe,应用,data
From: https://www.cnblogs.com/mayism123/p/17640971.html

相关文章

  • OpenHarmony应用开发,申请权限导致应用无法安装问题
    我是在添加ohos.permission.GET_RUNNING_INFO(允许应用获取运行态信息)权限时遇到的该问题。现象:问题原因:应用权限分三个级别:normal、system_basic、system_core第一步:查询使用权限的级别https://docs.openharmony.cn/pages/v3.2/zh-cn/application-dev/security/permission-......
  • 随笔-调试-获取__libc_fatal退出原因
    https://github.com/lattera/glibc/blob/master/sysdeps/posix/libc_fatal.c:......
  • ingress 简单应用
    1.1、命令创建kubectlcreatesecrettlstls-secret--cert=cert.crt--key=privateKey.key1.2、yaml文件创建:apiVersion:v1kind:Secretmetadata:name:<secret-name>data:tls.crt:<base64-encoded-certificate>tls.key:<base64-encoded-private-......
  • OpenCV CAP_PROP_FRAME_COUNT 获取视频帧数问题
    OpenCV读取视频,可以通过属性CAP_PROP_FRAME_COUNT获取视频的总帧数,但是有些视频通过该属性获取的帧数和实际遍历整个视频的帧数不一样。importcv2ascvvideo='video.mp4'cap=cv.VideoCapture(video)frames=cap.get(cv.CAP_PROP_FRAME_COUNT)#通过属性获取帧数......
  • 软件测试|测试平台开发-Flask 入门:编写第一个简单 Web 应用
    简介Flask是一个轻量级的PythonWeb框架,它使得创建Web应用变得简单快捷。相比于Django框架,它具有以下的优点:轻:Flask是一个轻量级的Web框架,使用Python语言编写易:较其他同类型框架更为灵活、轻便且容易上手快:小型团队在短时间内就可以完成功能丰富的中小型网站或Web服务......
  • 获取硬件及系统详细信息
    ///<summary>///获取硬件及系统详细信息///ManagementClass///</summary>publicstaticclassHardwareInformation{publicenumHardWareType{/*********************硬件信息*********************////<summary>///......
  • Node.js 获取项目根目录的几种方法
    module.filename:开发期间,该行代码所在的文件。__filename:表示当前正在执行的脚本的文件名。它将输出文件所在位置的绝对路径,且和命令行参数所指定的文件名不一定相同。如果在模块中,返回的值是模块文件的路径。始终等于module.filename。__dirname:当前执行脚本文件所在的目录......
  • SpringMVC-1-解密Spring MVC:构建优雅、灵活的Web应用的秘诀
    今日目标能够编写SpringMVC入门案例了解SpringMVC原理1.SpringMVC介绍1.1SpringMVC概述思考:SpringMVC框架有什么优点?SpringMVC是一种基于Java实现MVC模型的轻量级Web框架优点使用简单,开发便捷(相比于Servlet)天然的与Spring框架集成(如IOC容器、AOP等)请求处理简化:支......
  • WebView2在WPF中的应用
    开发环境运行环境:.Net6开发环境:VisualStudio202217.1.3框架语言:WPF安装WebView2通过PackageManager控制台安装Install-PackageMicrosoft.Web.WebView2通过Nuget包管理器安装在窗体中添加名字空间:xmlns:wv2="clr-namespace:Microsoft.Web.WebView2.Wpf;asse......
  • 7 锚点应用
    7锚点应用锚点(anchor)是超链接的一种应用,也叫命名锚记,锚点可以像一个定位器一样,可以实现页面内的链接跳转,运用相当普遍。例如,我们有一个网页,由于内容太多,导致页面很长,而且里面的内容,可以分为N个部分。这样的话,我们就可以在网页的顶部设置一些锚点,这样便可以方便浏览者点击相......