大家好,
我正在使用React Native开发应用程序。
我如何知道在Android上为此警报框按下的值?
我实际上需要立即侦听该警报框的响应,以在后台屏幕上显示组件。如果访问被拒绝,我将显示组件X,否则显示组件Y。
感谢和亲切问候, 阿维纳什
答案 0 :(得分:1)
constructor(props){
super(props)
this.setState({
hasPermission:false
})
}
requestMultiplePermission = async () => {
const granted = await PermissionsAndroid.request(
PermissionsAndroid.PERMISSIONS.CAMERA,
{
title: 'Cool Photo App Camera Permission',
message:
'Cool Photo App needs access to your camera ' +
'so you can take awesome pictures.',
buttonNeutral: 'Ask Me Later',
buttonNegative: 'Cancel',
buttonPositive: 'OK',
},
);
if (granted === PermissionsAndroid.RESULTS.GRANTED) {
console.log('You can use the camera');
this.setState({hasPermission:true})
} else {
console.log('Camera permission denied');
}
}
componentDidMound() => {
if(Platform.OS == "android"){
this.requestMultiplePermission()
}
}
render() {
return(
...
{this.state.hasPermission && <View><Text>has permission</Text></View>}
{!this.state.hasPermission && <View><Text>not have permission</Text>
</View>}
...
)
}
返回的结果是获得许可的结果。
每次使用权限时,都应先进行检查。