[Android] [expo] [@React-Con-Voice/Voice] [TypeError: не может прочитать свойство «StartSpeech» NULL]Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 [Android] [expo] [@React-Con-Voice/Voice] [TypeError: не может прочитать свойство «StartSpeech» NULL]

Сообщение Anonymous »

Я пытаюсь записать пользовательский голос и преобразовать его в текст в приложении React-Native, используя пакет Expo , typescript и @React-C-Voice/Voice .
Я импортировал библиотеку в свой проект, но когда я пытаюсь начать начало или остановка , я получаю ниже.TypeError: Cannot read property 'startSpeech' of null

TypeError: Cannot read property 'stopSpeech' of null
< /code>
Я пробовал все, но я не понимаю, почему библиотека, кажется, не загружается правильно ...
Я использую Android 13 < /code>. Возможно, есть несовместимость версии? import React, { useState } from 'react';
import { StyleSheet, Text, TouchableOpacity, View } from 'react-native';
import Voice from '@react-native-voice/voice';

const SpeechToText = () => {
const [isRecording, setIsRecording] = useState(false);
const [speechText, setSpeechText] = useState('');

const onSpeechStartHandler = () => {
setIsRecording(true);
setSpeechText('');
};

const onSpeechEndHandler = () => {
setIsRecording(false);
};

const onSpeechResultsHandler = (event: any) => {
setSpeechText(event.value[0]);
};

const startSpeechToText = async () => {
try {
await Voice.start('en-US');
onSpeechStartHandler();
} catch (error) {
console.log(error);
}
};

const stopSpeechToText = async () => {
try {
await Voice.stop();
onSpeechEndHandler();
} catch (error) {
console.log(error);
}
};

return (


Press and hold to speak

{speechText}

);
};

in app.json , вот моя конфигурация:
{
"expo": {
[....]
"android": {
"adaptiveIcon": {
"foregroundImage": "./assets/images/adaptive-icon.png",
"backgroundColor": "#ffffff"
},
"permissions": [
"android.permission.RECORD_AUDIO"
]
},
"plugins": [
[
"@react-native-voice/voice",
{
"microphonePermission": "CUSTOM: Allow $(PRODUCT_NAME) to access the microphone",
"speechRecognitionPermission": "CUSTOM: Allow $(PRODUCT_NAME) to securely recognize user speech"
}
]
]
}
}

вот мой package.json :
"scripts": {
"start": "expo start",
"android": "expo start --android",
"ios": "expo start --ios",
"web": "expo start --web",
"test": "jest --watchAll"
},
"dependencies": {
"@react-native-voice/voice": "^3.2.4",
"expo": "~48.0.11",
"expo-font": "~11.1.1",
"expo-linking": "~4.0.1",
"expo-permissions": "^14.1.1",
"expo-router": "^1.5.2",
"expo-speech": "^11.1.1",
"expo-splash-screen": "~0.18.1",
"expo-status-bar": "~1.4.4",
"expo-system-ui": "~2.2.1",
"expo-web-browser": "~12.1.1",
"react": "18.2.0",
"react-dom": "18.2.0",
"react-native": "0.71.6",
"react-native-keyboard-aware-scroll-view": "^0.9.5",
"react-native-safe-area-context": "4.5.0",
"react-native-screens": "~3.20.0",
"react-native-vector-icons": "^9.2.0",
"react-native-web": "~0.18.10"
},
"devDependencies": {
"@babel/core": "^7.20.0",
"@types/react": "~18.0.14",
"@types/react-native": "^0.71.5",
"react-test-renderer": "18.2.0",
"typescript": "^4.9.4"
},
"private": true
}```



Подробнее здесь: https://stackoverflow.com/questions/760 ... operty-sta
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»