uniapp 解决华为上架被拒问题,APP在申请敏感权限时,应同步说明权限申请的使用目的

1、store/modules/permission.js

// app权限申请处理
const state = {
	// 处理应用程序权限请求
	CAMERA: false,
	WRITE_EXTERNAL_STORAGE: false,
	ACCESS_FINE_LOCATION: false,
	CALL_PHONE: false,
	isIos: uni.getSystemInfoSync().platform == 'ios',
	mapping: {
		'CAMERA': {
			title: '摄像头权限说明',
			content: '摄像头权限将用于拍摄照片和视频。这样,您可以在应用程序中记录瞬间、分享内容或进行其他相关操作。',
			methods: 'SET_CAMERA'
		},
		'WRITE_EXTERNAL_STORAGE': {
			title: '存储空间/照片权限申请说明',
			content: '便于您使用该功能上传您的照片/图片/视频及用于更换头像、发布商品/分享、下载、与客服沟通等场景中读取和写入相册和文件内容。',
			methods: 'SET_WRITE_EXTERNAL_STORAGE'
		},
		'ACCESS_FINE_LOCATION': {
			title: '地理位置权限申请说明',
			content: '****应用程序可以提供基于位置的服务、定位导航、附近搜索等功能。',
			methods: 'SET_ACCESS_FINE_LOCATION'
		},
		'CALL_PHONE': {
			title: '拨打/管理电话权限申请说明',
			content: '便于您使用该功能联系买家、骑手或者客服、业务经理与联系等场景下使用',
			methods: 'SET_CALL_PHONE'
		}
	}
}

const mutations = {
	// 管理权限告知目的
	SET_CAMERA(state, val) {
		state.CAMERA = val
	},
	SET_WRITE_EXTERNAL_STORAGE(state, val) {
		state.WRITE_EXTERNAL_STORAGE = val
	},
	SET_CALL_PHONE(state, val) {
		state.CALL_PHONE = val
	},
	SET_ACCESS_FINE_LOCATION(state, val) {
		state.ACCESS_FINE_LOCATION = val
	}
}

const actions = {
	// 权限获取
	async requestPermissions({ state, dispatch, commit }, permissionID) {
		try {
			if (!state[permissionID] && !state.is
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值