Реагируйте на сбой веб-просмотра при воспроизведении видео на YouTube. - PullRequest
0 голосов
/ 21 февраля 2019

При воспроизведении видео при воспроизведении музыкального приложения происходит сбой.

Сбой SMS или телефонного звонка также вызывает сбой

Похоже, что любой системный звук вызовет сбой

Я пытался обновить до последней версии реагировать на родную и у меня та же проблема.

, пожалуйста, помогите мне

import { WebView } from 'react-native';

@observer
export default class MyWebView extends Component<any>
{
    setPlay = (){
         this.setState({play: true})
    }
    render() {
        const uri = 'https://www.youtube.com/embed/71pyOB4TPRE'
        let play = this.state.play
        return (
          <View >
            {!play ? <TouchableOpacity  onPress={this.setPlay}>
                <Image style={{ width: 40, height: 40 }} source={playerIcon} />
            </TouchableOpacity> : null}

            { play? 
            <View style={{width: 450, height:300}} >
                <WebView
                    source={{ uri: uri }}
                />
            </View> :null}
          </View>
        )
    }
}

Если показывать веб-просмотр напрямую, он не вылетит

    render() {
        const uri = 'https://www.youtube.com/embed/71pyOB4TPRE'
        let play = this.state.play
        return (
          <View >
            <View style={{width: 450, height:300}} >
                <WebView
                    source={{ uri: uri }}
                />
            </View>
          </View>
        )
    }
}

Только для Android

1 Ответ

0 голосов
/ 22 февраля 2019

Наконец-то я нашел очень глупое решение.Добавьте этот код в файл entery index.js

<View style={{ height:0 }}><WebView source={{ html: `` }} /></View>

Вот так

import TabNavigator from './router'
const AppContainer = createAppContainer(TabNavigator)

export default class App extends React.Component {
    render() {
        if( Platform.OS === 'ios' ){
            return <AppContainer />
        }

        return <React.Fragment>
            <View style={{ height:0 }}><WebView source={{ html: `` }} /></View>
            <AppContainer />
        </React.Fragment>
    }
}

Я не нашел конкретной причины, но у меня это работает

Очень странно, разве только у меня есть эта проблема?

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