当前位置: 首页 > wzjs >正文

适合做网站的软件有哪些福建大佳建设工程有限公司网站

适合做网站的软件有哪些,福建大佳建设工程有限公司网站,快速建设网站工具,安卓优化大师下载安装到手机【1】问题描述: 小程序在调用 wx.getLocation() 获取用地理位置时,如果用户选择拒绝授权,代码会直接抛出错误。如果再次调用 wx.getLocation() 时,就不会在弹窗询问用户是否允许授权。导致用户想要重新允许获取地理位置时&#x…

【1】问题描述:

  • 小程序在调用 wx.getLocation() 获取用地理位置时,如果用户选择拒绝授权,代码会直接抛出错误。如果再次调用 wx.getLocation() 时,就不会在弹窗询问用户是否允许授权。导致用户想要重新允许获取地理位置时,没有途径。

【2】前提准备:

  • 小程序已经 申请过 wx.getLocation() :获取当前的地理位置 的服务权限
  • 在小程序的根目录下的 app.json 中配置 requiredPrivateInfos 进行声明启用
    • 在调用 wx.getLocation() 时需要在 app.json 配置 permission 字段,同时使用 scope.userLocation 声明收集用户选择的位置信息的目(wx.chooseLocation() 接口不需要配置该字段,可以直接进行调用)
    
    {"requiredPrivateInfos": ["getLocation"],"permission": {"scope.userLocation": {"desc": "获取用户位置信息用于填写收货地址"}}
    }
    

【3】解决思路:

  • 与直接调用 wx.getLocation()不同, 我们需要优化授权的流程:

    1. 用户进入到需要授权地理位置的页面,首先使用 wx.getSetting() 获取用户所有的授权信息,查询是否已经授权地理位置信息。wx.getSetting() 返回一个 authSetting 对象,对象只会包含小程序已经向用户请求过的权限,以及授权结果。
    2. 在 authSetting 对象 中,authsetting['scope.userLocation'] 的返回值表示是否已经授权获取地理位置的信息:
      • 返回 true:用户之前已经允许小程序获取用户的地理位置信息,直接用 wx.getLocation() 获取用户位置信息即可
      • 返回 false:用户已经拒绝授权访问地理位置信息
      • 返回 undefined:用户即没有同意也没有拒绝,可以用 wx.getLocation() 方法,微信小程序将会显示弹框,询问用户是否允许小程序获取地理位置
    3. 如果用户之前已经拒绝获取地理位置信息,现在小程序需要该信息时,可以使用 wx.showModal() 弹出一个弹框,询问用户是否进行授权
    4. 当用户允许授权是,通过 wx.openSetting() 调起微信客户端小程序设置界面,用户可以进行设置权限。

注意事项:

  1. 如果希望用户再次授权,就需要让用户进行 手动开启授权
  2. wx.openSetting() 必须用户发生点击行为后,才可以跳转到设置页进行授权信息管理。

【4】代码:

  1. index.wxml

    <button type="primary" bind:tap="getUserPosition">获取用户地理位置信息</button>
    
  2. index.js

    // index.js
    Page({async getUserPosition() {const {  authSetting } = await wx.getSetting()if (authSetting['scope.userLocation'] === false) {// 用户之前已经拒绝授权,现在希望能够再次授权// 使用对话框提示用户进行授权wx.showModal({title: '授权提示',content: '需要获取地理位置信息,请确认授权',complete: async ({ confirm, cancel }) => {if (confirm) {const {authSetting} = await wx.openSetting()// 用户再次拒绝授权if (!authSetting['scope.userLocation']) {wx.showToast({icon: 'none',title: '授权失败'})return}// 已经允许获取位置信息const res = await wx.getLocation()console.log(res);} else {wx.showToast({icon: 'none',title: '您已拒绝授权'})}},})} else {try {const res = await wx.getLocation()console.log(res);} catch (error) {console.log(error);wx.showToast({icon: 'none',title: '您已拒绝授权获取位置信息'})}}}
    })
    

文章转载自:

http://Iw58tBET.tLbdy.cn
http://c31CB8y2.tLbdy.cn
http://Brmdbp6X.tLbdy.cn
http://VVxiT3aK.tLbdy.cn
http://Q4u61OPw.tLbdy.cn
http://Ce3pJbBI.tLbdy.cn
http://kPVCkHDH.tLbdy.cn
http://HYkI6oXz.tLbdy.cn
http://sQg512C5.tLbdy.cn
http://ctQQsng5.tLbdy.cn
http://19H2xD4P.tLbdy.cn
http://mr7Bk14F.tLbdy.cn
http://ZUR0EFJZ.tLbdy.cn
http://gbWuqWoA.tLbdy.cn
http://L6vv6Jmh.tLbdy.cn
http://tazSrtED.tLbdy.cn
http://fm28lFrW.tLbdy.cn
http://1uejtMlc.tLbdy.cn
http://I6EU8Mwo.tLbdy.cn
http://OhLNb0gS.tLbdy.cn
http://Pj9NAsQo.tLbdy.cn
http://yea0YWLR.tLbdy.cn
http://eQn76qkf.tLbdy.cn
http://eLEenH02.tLbdy.cn
http://KLwcF88I.tLbdy.cn
http://LAD5yKCX.tLbdy.cn
http://9LbydHMg.tLbdy.cn
http://alDYonPA.tLbdy.cn
http://zA15IdrE.tLbdy.cn
http://8uyRRq4W.tLbdy.cn
http://www.dtcms.com/wzjs/666289.html

相关文章:

  • 外国高端网站设计职业教育网站建设方案
  • 电商网站 案例建设银行纪念币预约网站
  • 做水果网站行在线商城网站怎么做
  • 淘宝客个人网站建设西安做网站电话
  • 江西做网站的公司有哪些小程序软件开发制作
  • 安阳房产网南昌seo推广公司
  • 猪八戒网网站建设网站的推广
  • 做网站投注代理犯罪吗网站兼容
  • 京东网站建设项目需求分析报告网站建设 用ftp上传文件
  • 网站域名备案多长时间北京交易中心网站
  • 深圳网站建设公司wordpress采集插件qqword
  • wordpress网站怎么优化河北seo网站优化报价
  • 网站做哪些比较赚钱爱客crm手机下载
  • 广州好的网站设计公司中国500强最新排名2021
  • 建设网站贵吗截获网站流量怎么做
  • 媒体网站推进信息化建设郑州做网站网站建设费用
  • 东莞市企业信息公示网网站推广优化如何做
  • 天津市网站制作建设推广公司温州网站开发建设
  • 高端网站建设哪个好wordpress 内核月报
  • 做网站后端需要什么语言没有空间可以做网站吗
  • 南昌网站专业制作简单网页设计html代码
  • cms的功能有哪些南昌seo教程
  • 企业网站系统详细设计百度站长工具对seo的帮助
  • 适合设计师看的设计网站赣榆建设局网站
  • 长安营销型网站建设电商网站订烟平台
  • 绩效考核表 网站建设wordpress评论回复插件
  • 专门做黄漫的网站天眼查官网查个人
  • 沭阳网站建设多少钱wordpress 插件机制
  • 网站中图片怎么做的郑州seo关键词优化公司
  • 网站后台登陆不上去装修网站设计平台