uniapp关于微信小程序和安卓APP授权验证封装
这里只考虑的小程序和安卓的授权,调取后会自动弹出授权弹窗,如果已拒绝授权则弹窗跳转到权限设置弹窗
安卓需要引入permission.js
// #ifdef APP-PLUS
import permision from "@/utils/permission.js";
// #endifconst isAuthorize = function(scopeStr, permissionToast) {return new Promise((resolve, reject) => {// #ifdef MP-WEIXIN// 微信小程序验证是否开启授权uni.getSetting({success(res) {// 如果权限未开启if (!res.authSetting[scopeStr]) {uni.authorize({scope: scopeStr,// 允许授权success() {resolve(true)},// 拒绝授权fail() {uni.showModal({title: permissionToast.title,content: permissionToast.content,confirmText: "开启授权",cancelText: '取消',success: (res2) => {if (res2.confirm) {// 开启授权设置uni.openSetting({success: (res3) => {//设置后返回,不管开没开// 有回调触发回调if(permissionToast.callback){permissionToast.callback();}}})reject(false)} else {reject(false)return false;}},fail: () => {reject(false)}})}})} else{// 已开启权限resolve(true)}}})// #endif// #ifdef APP-PLUS// APP权限验证permision.requestAndroidPermission(scopeStr).then(res=>{// 1已授权 2 未授权 -1 永久拒绝授权// 2会自动调取弹窗 -1必须手动调取弹窗if(res == -1) {// 永久拒绝授权相册uni.showModal({title: permissionToast.title,content: permissionToast.content,confirmText: "开启权限",cancelText: '取消',success: (res) => {if (res.confirm) {permision.gotoAppPermissionSetting()} else {return false;}}})}resolve(res)}).catch(err=>{reject(false)})// #endif})
}export default isAuthorize
使用
// #ifdef MP-WEIXIN
const toastData = {title: '请开启定位',content: '请允许使用您的定位',callback:()=>{//小程序需要设置完成后再次触发的方法如this.getLocation()}
}
isAuthorize('scope.userLocation',toastData ).then(() => {// 已开启权限})
// #endif
// #ifdef APP-PLUS
isAuthorize('android.permission.ACCESS_FINE_LOCATION', toastData).then(res => {if (res == 1) {//已开启权限}
})
// #endif
微信小程序只需要将uni替换成wx就可以了
微信小程序权限码
安卓APP权限码
uniapp关于微信小程序和安卓APP授权验证封装相关推荐
- java 、ssm、 springboot、 vue、 python 、php、 asp.net 、mysql 微信小程序、安卓APP、加入RNN算法,招聘信息管理系统的设计与实现源码下载
本研究的目的是设计和实现一个招聘信息管理系统,旨在提供一个方便.高效的平台,用于发布.管理和搜索招聘信息,并连接求职者和招聘公司. 目录 研究目的: 开发背景: 国外研究现状分析: 国内研究现状分析: ...
- uni-app 关于微信小程序分享,app微信聊天界面和朋友圈分享
前端小白的uni-app艰难学习之路 微信小程序分享 实现微信小程序分享和app内微信分享 小程序分享很简单,我们通过button的open-type属性 <!-- #ifdef MP-WEIX ...
- UNIAPP、微信小程序激励视频、插屏等封装
说明 appInfo至少需要包含三个字段,id,WxRewardedVideoID,WxInterstitialID 调用示例: this.WxAd.show('WxInterstitial',fun ...
- uni-app app 跳转 微信小程序(安卓/ios)
uni-app app 跳转 微信小程序(安卓/ios) 近日接到需求,需要实现在 app 中直接跳转到微信小程序中,其实非常简单,uni-app 都已经集成好了. 安卓和ios 有点区别,这个需要注 ...
- uniApp 实现微信小程序和app视频播放flv格式视频监控
测试要在真机测试,微信开发者工具不能测试 video 支持 App平台: 支持本地视频(mp4/flv).网络视频地址(mp4/flv/m3u8)及流媒体(rtmp/hls/rtsp). 小程序: l ...
- uniapp + vue3微信小程序开发(1)框架搭建
uniapp内置vue2,很多小伙伴喜欢用,但是作为首批吃螃蟹的人,肯定会想用vue3来开发,那么会遇到哪些问题呢? 1.编辑器等工具 Hbuilder X 3.4.6版本及以上(编辑器也在不断更新, ...
- 如何在微信小程序中下载APP?
如何在微信小程序中下载APP? 可能的方案 官方api接口:--目前小程序官方未提供专门下载APP的接口:小程序目前是不允许将流量导出到APP之外,所以合理推断,该方案短期内并不可行. 通过web-v ...
- CLI 发行uni-app到微信小程序,如何不打开微信开发者工具去进行小程序发布?
前言: 小程,赶紧把这个UI这里改一下,改完赶紧推个版本,等着测试:哎小程,这个需求客户需要这样改一下,你赶紧改一下推个版本客户等着看!!! 上面这段话相信做开发的同僚或多或少每天都在听,可是小程序的 ...
- 基于uni-app开发微信小程序__手牵手带你开发【懂你找图】项目
前戏 某一天的夜里,敲完了代码之后便直接倒在床上睡着了,醒来时只记得梦里的一句话:"想要成为高手,就必须要大量实践,大量做项目,必须要把自己不会的东西全部吃透,不要得过且过.",猛 ...
最新文章
- python使用imbalanced-learn的RandomOverSampler方法进行上采样处理数据不平衡问题
- 如何让div水平垂直居中
- 获取mongodb数据变更_支持mysql、MongoDB数据变更订阅/监听分发
- 服务器无法执行该事务_分布式事务、MVCC、事务隔离级别
- [转] Java中的static关键字解析
- SQL Server遍历表(临时表)
- html5缓动下拉菜单,HTML5 Canvas鼠标跟随的缓动效果
- 奇安信代码安全实验室帮助微软修复两个 “重要” 漏洞,获官方致谢
- mysql 保存emoji 4字节宽度字符串
- android 专业ps软件,手机专业ps修图
- 英语介词at、in、on常见用法(时间、地点、方位)
- 没有一个程序员,能“活过”40岁
- 私募量化策略超额收益来源分析
- 语法错误 : 缺少“;”(在“类型”的前面)的解决方案
- 龙ol服务器维护补偿boss,龙OL副本BOOS位置攻击属性及掉落物品介绍
- ddr2代内存最大升级到多少_DDR2台式内存条单条最大多少G?
- PCL中3D点云特征描述与提取(三)
- 超便捷好用的-圆形花瓣加载滚动图片插件spin.js
- matlab 多普勒效应产生振动信号和处理
- django 输入城市名称获取相应城市即将上映电影