uniapp 权限申请插件(权限使用说明) Ba-Permissions

简介(下载地址)

Ba-Permissions 是一款权限申请插件,支持权限使用说明弹窗,满足市场审核需求。支持自定义权限申请,也支持快速申请定位、相机、媒体、文件、悬浮窗等常见权限。

  • 支持权限使用说明弹窗,满足市场审核需求
  • 支持常见权限便捷申请(定位、相机、媒体、文件、悬浮窗、忽略电池优化等等)
  • 支持自定义权限申请
  • 支持跳转应用详情
  • 支持跳转到应用权限设置页
  • 支持判断一个或多个权限是否全部授予
  • 支持获取没有授予的权限

截图展示

uniapp 权限申请插件(权限使用说明) Ba-Permissions_第1张图片


uniapp 常用原生插件大全


使用方法

script 中引入组件

	const permission = uni.requireNativePlugin('Ba-Permissions')

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

	const permission = uni.requireNativePlugin('Ba-Permissions')
	export default {
	    data() {
	    	return {
	    		msgList: []
	    	}
	    },
	    methods: {
	    	request() {//自定义申请权限
	    		let that = this;
	    		permission.request({
	    				permissions: ['android.permission.CAMERA']
	    			},
	    			(res) => {
	    				that.showResult(res)
	    			});
	    	},
			isGranted() { //判断一个或多个权限是否全部授予了
				let that = this;
				permission.isGranted({
						permissions: ['android.permission.CAMERA']
					},
					(res) => {
						that.showResult(res)
					});
			},
			getDenied() { //获取没有授予的权限
				let that = this;
				permission.getDenied({
						permissions: ['android.permission.CAMERA', 'android.permission.ACCESS_COARSE_LOCATION',
							'android.permission.ACCESS_FINE_LOCATION',
							'android.permission.ACCESS_BACKGROUND_LOCATION'
						]
					},
					(res) => {
						that.showResult(res)
					});
			},
			goPermissionPage() { //跳转到应用权限设置页
				let that = this;
				permission.goPermissionPage({
						permissions: ['android.permission.CAMERA']
					},
					(res) => {
						that.showResult(res)
					});
			},
			goAppDetails() {//跳转应用详情
				let that = this;
				permission.goAppDetails(
					(res) => {
						that.showResult(res)
					});
			},
	    	reqLocation() {//申请位置权限
	    		let that = this;
	    		permission.reqLocation(
	    			(res) => {
	    				that.showResult(res)
	    			});
	    	},
	    	reqAlertWindow() { //申请悬浮窗权限
	    		let that = this;
	    		permission.reqAlertWindow(
	    			(res) => {
	    				that.showResult(res)
	    			});
	    	},
		    showResult(res) {
		    	console.log(res);
		    	//this.msgList.unshift(JSON.stringify(res))
		    	uni.showToast({
		    		title: res.msg,
		    		icon: "none",
		    		duration: 3000
		    	})
		    }
	    }
    }

api 列表

方法名 说明
request 自定义权限申请
isGranted 判断一个或多个权限是否全部授予了
permission 获取没有授予的权限
getDenied 跳转到悬浮窗权限页面
goPermissionPage 跳转到应用权限设置页
goAppDetails 跳转应用详情
reqLocation 定位权限
reqLocation2 定位权限(需要后台)
reqAlertWindow 悬浮窗权限
reqManageStorage 申请所有文件读取权限
reqReadMediaLocation 申请读取图片地理信息权限
reqBluetooth 申请蓝牙权限
reqNotification 申请通知权限
reqNotifyPolicy 申请勿扰权限
reqNotifyListener 申请通知栏监听权限
reqIgnoreBattery 申请忽略电池优化权限
reqSensors 传感器
reqRecognition 申请身体活动权限
reqInstallPackages 申请安装包权限
reqUsageStats 申请使用统计权限
reqExactAlarm 申请闹钟提醒权限

常见权限清单

    
    <uses-permission android:name="android.permission.CAMERA" />
    
    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
    
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
    
    <uses-permission android:name="android.permission.BODY_SENSORS" />
    <uses-permission android:name="android.permission.BODY_SENSORS_BACKGROUND" />
    
    <uses-permission android:name="android.permission.ACTIVITY_RECOGNITION" />
    
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
    <uses-permission android:name="android.permission.BLUETOOTH_SCAN" />
    <uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
    <uses-permission android:name="android.permission.BLUETOOTH_ADVERTISE" />
    
    <uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
    <uses-permission android:name="android.permission.ACCESS_MEDIA_LOCATION" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    
    <uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" />
    
    <uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
    <uses-permission android:name="android.permission.READ_MEDIA_VIDEO" />
    <uses-permission android:name="android.permission.READ_MEDIA_AUDIO" />
    <uses-permission android:name="android.permission.READ_MEDIA_VISUAL_USER_SELECTED" />
    
    <uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
    
    <uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
    <uses-permission android:name="android.permission.NOTIFICATION_SERVICE" />
    
    <uses-permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY" />
    
    <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS" />
    
    <uses-permission android:name="android.permission.SCHEDULE_EXACT_ALARM" />
    
    <uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />

你可能感兴趣的:(uni-app,uni-app,权限申请,权限使用说明,隐私,跳转)