Реакция родной камеры на запись-ошибка синхронизации не удалась - PullRequest
0 голосов
/ 03 июня 2019

Когда я нажимаю на кнопку записи на устройстве Android реакции-native-камеры выдает ошибку «Запуск не удалось».

Error: start failed.
    at createErrorFromErrorData (NativeModules.js:155)
    at NativeModules.js:104
    at MessageQueue.__invokeCallback (MessageQueue.js:414)
    at MessageQueue.js:127
    at MessageQueue.__guard (MessageQueue.js:314)
    at MessageQueue.invokeCallbackAndReturnFlushedQueue (MessageQueue.js:126)
    at debuggerWorker.js:80
  1. Код разрешения был добавлен в файл 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" />
Все разрешения предоставляются, проверено с помощью PermissionsAndroid. Пробные параметры качества прохождения, как указано в Ссылка
setCameraReady = () => {
    this.setState({
      cameraReady: true
    });
};
startRecording = async () => {
    const { cameraReady } = this.state;
    if (cameraReady) {
      try {
        // default to mp4 for android as codec is not set
        const { uri, codec = 'mp4' } = await this.camera.recordAsync({
          maxDuration: 30
        });
        console.log(uri)
      } catch (error) {
        console.log(error);
      }
    }
  };
 stopRecording = () => {
    this.camera.stopRecording();
  };
<RNCamera
    style={cameraStyle}
    ref={(ref) => {
      this.camera = ref;
    }}
    type={cameraType}
    mirrorImage={cameraType !== 'back'}
    androidCameraPermissionOptions={{
      title: 'Permission to use camera',
      message: 'We need your permission to use your camera phone',
      buttonPositive: 'Ok',
      buttonNegative: 'Cancel'
    }}
    androidRecordAudioPermissionOptions={{
      title: 'Permission to use audio recording',
      message: 'We need your permission to use your audio',
      buttonPositive: 'Ok',
      buttonNegative: 'Cancel'
    }}
    onCameraReady={this.setCameraReady}
   />

Должен получить URI после разрешения обещания recordAsync.

1 Ответ

0 голосов
/ 03 июля 2019

Благодаря команде response-native-camera.

Обновление response-native-camera до последней версии, т. Е. 1.10.0, решило проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...