我正在尝试在Android上使用Crosswalk运行AppRTC HTML5演示。但是由于某种原因,我无法使麦克风正常工作。
我从GitHub获得了AppRTC HTML5演示源,并按照说明进行了构建。完成后,我将使用Chrome应用程序的输出生成并编辑appwindow.html
文件以包括cordova.js
,并修复包含文件的路径。
最后,我使用带有Crosswalk插件的Cordova(使用cordova build
命令)进行构建。该应用程序可以正常工作并将视频连接到服务器,从PC接收音频也很不错,但不会发送来自移动设备的音频。我不确定出什么问题,请帮助修复音频。
以下是Cordova配置文件。
config.xml
<?xml version='1.0' encoding='utf-8'?>
<widget id="com.test.xapprtc" version="0.0.1" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<name>xAppRtc</name>
<description>
AppRTC on crosswalk.
</description>
<author email="[email protected]" href="http://test.com">
Test
</author>
<content src="appwindow.html" />
<preference name="DisallowOverscroll" value="true" />
<preference name="Orientation" value="portrait" />
<preference name="EnableViewportScale" value="true" />
<preference name="StatusBarOverlaysWebView" value="false" />
<plugin name="cordova-plugin-whitelist" version="1" />
<access origin="*" />
<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>
<platform name="ios">
<allow-intent href="itms:*" />
<allow-intent href="itms-apps:*" />
</platform>
<feature name="Camera">
<param name="android-package" value="org.apache.cordova.CameraLauncher" />
</feature>
<feature name="Capture">
<param name="android-package" value="org.apache.cordova.Capture" />
</feature>
</widget>
要访问电话资源,您必须在AndroidManifest.xml上声明它,以便最终用户在安装应用程序时就知道它。
即使您没有将Crosswalk用作Webview库,Cordova和Crosswalk插件也会构建应用程序,因此您必须在清单中请求许可。
准则与嵌入版本的准则相同:https : //crosswalk-project.org/documentation/embedding_crosswalk.html
对于麦克风和摄像头,权限为:
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
但似乎该插件还具有一些技巧,还需要其他一些技巧:
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句