我正在使用create-react-native-app
,我在尝试从相机胶卷中获取图像时遇到了权限问题。
当我调用方法时:ImagePicker.launchImageLibraryAsync
,我收到错误:Missing camera roll permission.
import { ImagePicker } from 'expo';
export const getImageFromLibrary = () => ({
type: GET_IMAGE_FROM_LIBRARY,
promise: () => ImagePicker.launchImageLibraryAsync({
height: '100px',
width: '100px',
base64: true
})
});
错误:Missing camera roll permission.
表明我的应用没有权限,因此我创建了另一个按钮来请求权限。
import { Permissions } from 'expo';
<Button
onPress={() =>
Permissions.getAsync(Permissions.CAMERA_ROLL)
.then(console.log)
}
><Text>get permission</Text></Button>
但是当我点击此按钮时,console.log()
方法会返回:{status: "granted", expires: "never"}
。
这意味着授予权限而不会过期。但是,由于没有获得许可,仍然拒绝从图书馆获取图像的电话。
答案 0 :(得分:1)
如果您可以升级到Expo 27.0.1和28.0.0版本,那么您应该能够看到它的正常运行。
我用CRNA项目对其进行了测试。很好。
祝你好运!