Когда я нажимаю на кнопку записи на устройстве 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
- Код разрешения был добавлен в файл 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.