【问题标题】:react-native-camera Cannot read property 'Constants' of undefined on androidreact-native-camera 无法读取 android 上未定义的属性“常量”
【发布时间】:2019-05-25 06:38:24
【问题描述】:

我知道this 问题。 我已经以这种方式安装和配置了 react-native-camera:

yarn add react-native-camera --save
react-native link react-native-camera 

将这些添加到 AndroidManifest.xml

  <uses-permission android:name="android.permission.CAMERA" />
  <uses-permission android:name="android.permission.RECORD_AUDIO"/>
  <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
  <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

我正在使用this基本代码:

 <RNCamera
          ref={ref => {
            this.camera = ref;
          }}
          style={styles.preview}
          type={RNCamera.Constants.Type.back}
          flashMode={RNCamera.Constants.FlashMode.on}
          androidCameraPermissionOptions={{
            title: 'Permission to use camera',
            message: 'We need your permission to use your camera',
            buttonPositive: 'Ok',
            buttonNegative: 'Cancel',
          }}
          androidRecordAudioPermissionOptions={{
            title: 'Permission to use audio recording',
            message: 'We need your permission to use your audio',
            buttonPositive: 'Ok',
            buttonNegative: 'Cancel',
          }}
          onGoogleVisionBarcodesDetected={({ barcodes }) => {
            console.log(barcodes);
          }}
        />

并得到这个错误:

ExceptionsManager.js:74 TypeError: TypeError: Cannot read property 'Constants' of undefined

【问题讨论】:

  • 尝试手动链接。
  • 我试过了。没有区别。

标签: android reactjs react-native react-native-camera


【解决方案1】:

试试这些:

  1. 通过打开 MainApplication.java(app\src\main\java\com\YourAppName\MainApplication.java) 文件并搜索“相机”来检查 react-native 链接是否有效,如果您发现与相机相关的内容,则表示 react-native 链接有效。如果您没有找到“相机”,则需要手动链接。

  2. 尝试卸载应用程序,关闭所有已启动打包程序的终端,即react-native start。然后通过运行react-native run-android 命令重新安装应用程序。

【讨论】:

  • 我检查了所有的原生文件。所需的修改就在那里。
  • 我按照以下步骤操作,它成功了:1. yarn add react-native-camera 2. react-native link react-native-camera 3. 在 android/app/build.gradle 文件中添加了这一行 missingDimensionStrategy 'react-native-camera', 'general'。然后再次运行 react-native run-android。
猜你喜欢
  • 1970-01-01
  • 2019-09-27
  • 2017-10-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-27
  • 1970-01-01
  • 2018-10-22
相关资源
最近更新 更多