skapunker
@skapunker
Умный

Как вызвать запрос на включение камеры и микрофона в приложении Вконтакте?

Всем привет! Ребята, подскажите пожалуйста, как вызвать запрос на включение камеры и микрофона в приложении Вконтакте?

Приложение делается для мобильных клиентов Android и iOS. Подключается через фрейм. Нужно сходу после загрузки вызвать запросы на включение вебкамеры и микрофона.
  • Вопрос задан
  • 155 просмотров
Решения вопроса 1
Andrew_Pinkerton
@Andrew_Pinkerton
Backend-разработчик
Есть метод MediaDevices.getUserMedia()
Он будет работать в VK Mini Apps.

Я тебе даже рабочий кусок кода покажу, дальше сам разбирайся
JSX
import React from 'react';
import {Div, Group, Panel, View} from '@vkontakte/vkui';
import '@vkontakte/vkui/dist/vkui.css';


class App extends React.Component {
    constructor(props) {
        super(props);
        this.videoRef = React.createRef();
        this.handleVideo = this.handleVideo.bind(this);
        this.videoError = this.videoError.bind(this);
    }

    handleVideo(stream) {
        this.videoRef.current.srcObject = stream;
    }

    videoError = (err) => {
        alert(err.name)
    }


    componentDidMount() {
        navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia;

        if (navigator.getUserMedia) {
            let constraints = {
                audio: false,
                video: {facingMode: 'environment'}
            };

            navigator.mediaDevices.getUserMedia(constraints)
                .then(this.handleVideo)
                .catch(this.videoError)
        }
    }

    render() {
        return (
            <View activePanel="mainPanel" header={false}>
                <Panel id="mainPanel">
                    <Group>
                        <Div>
                            <video ref={this.videoRef} style={{width: '100%'}} playsInline autoPlay muted/>
                        </Div>
                    </Group>
                </Panel>
            </View>
        );
    }
}

export default App;


UPD:
Тут быстрый старт: https://vk.com/@vkappsdev-quick-start
А тут дорожная карта: https://vk.com/dev/roadmap (они отлючили JavaScript SDK для новых приложений), поэтому юзай VK Connect.
Сейчас в основе приложений сообществ — JavaScript SDK. Однако чтобы оставаться на острие технологий и унифицировать разработку всей экосистемы ВКонтакте, мы приняли решение отказаться от JavaScript SDK в пользу VK Connect.

С 1 марта приложения, которые интегрированы с платформой через JavaScript SDK, перестанут работать. В каталоге будут размещены только приложения, использующие VK Connect.

5e1696564817d193902222.png
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы