1

react-native-camera在我的应用程序中使用模块。按照说明使用此处列出的文档设置相机。设置后,我可以在 iOS 模拟器和我的 iPhone 上看到相机。但是当我点击CAPTURE按钮时,我的应用程序在模拟器中崩溃,我的 iPhone 上出现以下错误: iPhone错误

这是代码:

import React from 'react';
import {  Text, StyleSheet } from 'react-native';
import Camera  from 'react-native-camera';

class NCamera extends React.Component {
    takePicture() {
        alert('Pressed');

        this.camera.capture()
            .then((data) => {
                console.log(data);
            })
            .catch(err => console.log(err));
    }
    render() {
        return (
            <Camera
                ref={(cam) => {
                    this.camera = cam;
                }}
                style={styles.preview}
                aspect={Camera.constants.Aspect.fill}>
                <Text style={styles.capture} onPress={this.takePicture.bind(this)}>[CAPTURE]</Text>
            </Camera>
        );
    }
}

请注意,如果我删除capture方法(下面的代码),该应用程序不会崩溃并且在模拟器和 iPhone 中都可以正常工作。因此,下面的代码肯定存在一些问题,我无法弄清楚是什么。

this.camera.capture()
            .then((data) => {
                console.log(data);
            })
            .catch(err => console.log(err));
4

1 回答 1

1

解决方案

我忘了添加以下内容,以your_project/ios/your_project/Info.plist允许您的应用向用户的照片库写入权限。

<key>NSPhotoLibraryAddUsageDescription</key>
<string>Your message to user when the photo library is accessed for the first time</string> 
于 2017-12-24T18:09:59.900 回答