AppRTC android 人行横道
AppRTC android crosswalk
我正在尝试 运行 AppRTC HTML5 与 Android 上的 Crosswalk 演示。但出于某种原因,我无法让麦克风工作。
我从 GitHub 获得了 AppRTC HTML5 演示源,并按照说明进行构建。完成后,我使用生成的 Chrome 应用程序输出并编辑 appwindow.html
文件以包含 cordova.js
,并修复包含文件的路径。
最后,我使用带有人行横道插件的 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="test@test.com" 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 添加所需的权限?
从麦克风获取音频的权限是:
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
要访问 phone 资源,您必须在 AndroidManifest.xml 上声明它,
所以最终用户在安装应用程序时就知道了。
Cordova 和 Crosswalk 插件构建应用程序,即使您没有将 crosswalk 用作 webview 库,因此您必须在清单中请求许可。
指南与嵌入版本相同:
https://crosswalk-project.org/documentation/embedding_crosswalk.html
对于微型phone 和相机,权限为:
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
不过这个插件好像也有一些技巧,还需要一个:
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
我正在尝试 运行 AppRTC HTML5 与 Android 上的 Crosswalk 演示。但出于某种原因,我无法让麦克风工作。
我从 GitHub 获得了 AppRTC HTML5 演示源,并按照说明进行构建。完成后,我使用生成的 Chrome 应用程序输出并编辑 appwindow.html
文件以包含 cordova.js
,并修复包含文件的路径。
最后,我使用带有人行横道插件的 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="test@test.com" 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 添加所需的权限? 从麦克风获取音频的权限是:
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
要访问 phone 资源,您必须在 AndroidManifest.xml 上声明它, 所以最终用户在安装应用程序时就知道了。
Cordova 和 Crosswalk 插件构建应用程序,即使您没有将 crosswalk 用作 webview 库,因此您必须在清单中请求许可。
指南与嵌入版本相同: https://crosswalk-project.org/documentation/embedding_crosswalk.html
对于微型phone 和相机,权限为:
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
不过这个插件好像也有一些技巧,还需要一个:
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />