我有“更改图像”按钮,我希望用户使用胶卷来更改图像。
但是我得到警告,我没有使用相机胶卷的权限。
如何检查是否已授予许可?如果不是,我想寻求许可。
这是我现在的代码:
_pickImage = async () => {
let result = await ImagePicker.launchImageLibraryAsync({
allowsEditing: true,
aspect: [4, 3],
});
console.log(result);
if (!result.cancelled) {
this.setState({ image: result.uri });
}
};
这可能是一个非常愚蠢的问题,但是我在这里有点困惑...
如果您需要更多信息,请发表评论。
谢谢!
答案 0 :(得分:8)
如果您正在使用Expo,则可以从Expo获得Permission
。跟随他们的文档,很棒!
它看起来像这样:
import { Permissions } from 'expo';
async componentDidMount() {
const permission = await Permissions.getAsync(Permissions.CAMERA_ROLL);
if (permission.status !== 'granted') {
const newPermission = await Permissions.askAsync(Permissions.CAMERA_ROLL);
if (newPermission.status === 'granted') {
//its granted.
}
} else {
....your code
}
}
链接到Expo
我用一些新代码进行了编辑。您可以决定完全使用askAsync
。该文档非常有帮助!