Я смог интегрировать Twilio Video API, а аудиозапись работает как веб-приложение. Однако, когда я пытаюсь построить его для мобильных устройств через Phonegap Build, звуковой вызов работает не так, как ожидалось. Сообщения об ошибках, обнаруженные с помощью метода отладки Chrome Dev Tools USB, не поступали.Как сделать Twilio Video API Javascript SDK + Phonegap Build работать?
Работы:
- Web для веб-вызывающему Web для мобильных приложений (я могу услышать призыв Отчетливо, с обоих концов)
Не работает:
- Мобильный для Интернета (звук вообще не слышен, я слышу только голос одного вызова через интернет)
- Mobile для мобильных устройств (Ничего вообще)
Сначала Twilio Video API не работает в PhoneGap приложение и возвращение undefined
на twilio-conversations.min.js
. Я смог это исправить, добавив Crosswalk <plugin name="cordova-plugin-crosswalk-webview" spec="~2.1.0" source="npm" />
, поскольку я подозреваю, что это имеет какое-то отношение к webrtc. После добавления этого плагина Twilio теперь может создавать беседы и подключать обоих участников.
Не могу понять, что делать дальше. Я попытался добавить cordova-plugin-media-capture
, чтобы захватить звук и активировать «запись разрешения звука», но все равно не повезло.
Возможно, я что-то упустил. Любое предложение очень ценится. :)
Вот мой PhoneGap config.xml
<?xml version="1.0" encoding="UTF-8" ?>
<widget xmlns = "http://www.w3.org/ns/widgets"
xmlns:gap = "http://phonegap.com/ns/1.0"
id = "com.app.experiment"
versionCode = "1"
version = "1.0.0">
<name>Twilio Phonegap Experiment</name>
<description>
Twilio Phonegap Testing
</description>
<author href="https://domainhere.com" email="[email protected]">
woppi
</author>
<platform name="android"/>
<preference name="phonegap-version" value="cli-6.3.0" />
<preference name="orientation" value="portrait" />
<preference name="fullscreen" value="false" />
<preference name="webviewbounce" value="false" />
<preference name="DisallowOverscroll" value="true" />
<preference name="disallowOverscroll" value="true" />
<preference name="android-minSdkVersion" value="21" />
<preference name="android-installLocation" value="auto" />
<platform name="android">
<icon src="res/icon/android/drawable-ldpi-icon" qualifier="ldpi"/>
<icon src="res/icon/android/drawable-mdpi-icon" qualifier="mdpi"/>
<icon src="res/icon/android/drawable-hdpi-icon" qualifier="hdpi"/>
<icon src="res/icon/android/drawable-xhdpi-icon" qualifier="xhdpi"/>
<icon src="res/icon/android/drawable-xxhdpi-icon" qualifier="xxhdpi"/>
<icon src="res/icon/android/drawable-xxxhdpi-icon" qualifier="xxxhdpi"/>
</platform>
<platform name="android">
<splash src="res/screen/android/drawable-port-ldpi-screen" qualifier="ldpi"/>
<splash src="res/screen/android/drawable-port-mdpi-screen" qualifier="mdpi"/>
<splash src="res/screen/android/drawable-port-hdpi-screen" qualifier="hdpi"/>
<splash src="res/screen/android/drawable-port-xhdpi-screen" qualifier="xhdpi"/>
<splash src="res/screen/android/drawable-port-xxhdpi-screen" qualifier="xxhdpi"/>
<splash src="res/screen/android/drawable-port-xxxhdpi-screen" qualifier="xxxhdpi"/>
</platform>
<preference name="permissions" value="none"/>
<plugin name="cordova-plugin-camera" spec="~2.1.1" source="npm"/>
<plugin name="cordova-plugin-device" spec="~1.1.1" source="npm"/>
<plugin name="cordova-plugin-dialogs" spec="~1.2.0" source="npm"/>
<plugin name="cordova-plugin-geolocation" spec="~2.1.0" source="npm"/>
<plugin name="cordova-plugin-inappbrowser" spec="~1.3.0" source="npm"/>
<plugin name="cordova-plugin-network-information" spec="1.2.0" source="npm"/>
<plugin name="cordova-plugin-splashscreen" spec="~3.2.1" source="npm"/>
<plugin name="cordova-plugin-statusbar" spec="~2.1.2" source="npm"/>
<plugin name="cordova-plugin-whitelist" spec="~1.2.1" source="npm"/>
<plugin name="cordova-plugin-crosswalk-webview" spec="~2.1.0" source="npm" />
<plugin name="cordova-plugin-media-capture" spec="~1.4.0" source="npm" />
<access origin="*" subdomains="true"/>
<allow-intent href="http://*/*"/>
<allow-intent href="https://*/*"/>
<allow-intent href="tel:*"/>
<allow-intent href="sms:*"/>
<allow-intent href="mailto:*"/>
<allow-intent href="geo:*"/>
<platform name="android">
<allow-intent href="market:*"/>
</platform>
</widget>
Вы когда-нибудь могли это решить? –
@ Alexandr Pritchard No. Пробовал много сочетаний с разрешением звука и не мог придумать, что еще делать. Я также отправил по электронной почте [email protected] недели назад, но до сих пор не ответил. К сожалению, придется отказаться от всего, что я совершил за телефонную развязку, и решил пойти по-родному, изучить развитие Android/java, а затем использовать их Android SDK. Я только начинаю. О, парень! – Woppi
Прошу прощения за это. В настоящее время я работаю над проектом уровня производства с фиксированным бюджетом. Это позор, так как это может повлиять на то, можем ли мы освободить эту функцию для клиента, не затрачивая расходы на себя. –