Android Phonegap:找不到录制的文件
我正在使用phonegap的媒体插件录制声音。 录音后我找不到录制的声音 录制后如何定位录制的声音 我正在使用以下代码: index.htmlAndroid Phonegap:找不到录制的文件,android,cordova,phonegap-plugins,phonegap-build,Android,Cordova,Phonegap Plugins,Phonegap Build,我正在使用phonegap的媒体插件录制声音。 录音后我找不到录制的声音 录制后如何定位录制的声音 我正在使用以下代码: index.html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalab
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<title>Recorder</title>
<script type="text/javascript" charset="utf-8" src="cordova.js"> </script>
<script type="text/javascript" charset="utf-8">
<script>
function startRecording()
{
var src = "FinalAudio.wav";
myMedia = new Media(src, onSuccess, onError);
myMedia.startRecord();
alert("Started recording");
}
function onSuccess() {
console.log("Created Audio for Recording");
}
function onError(error) {
alert('code: ' + error.code + '\n' +
'message: ' + error.message + '\n');
}
function stopRecording()
{
myMedia.stopRecord();
alert("Stopped recording");
}
window.onload = function()
{
document.addEventListener("deviceready", onDeviceReady, false);
}
function onDeviceReady()
{
document.getElementById("btnStart").addEventListener('click', startRecording, false);
document.getElementById("btnStop").addEventListener('click', stopRecording, false);
}
</script>
</head>
<body>
<button id="btnStart">Start Recording</button>
<button id="btnStop">Stop Recording</button>
</body>
</html>
<?xml version='1.0' encoding='utf-8'?>
<widget id="com.domainurl.name" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:gap="http://phonegap.com/ns/1.0">
<name>New Recorder</name>
<description>
Hello World sample application that responds to the deviceready event.
</description>
<author email="support@phonegap.com" href="http://phonegap.com">
PhoneGap Team
</author>
<gap:platform name="ios" />
<gap:platform name="android" />
<gap:platform name="winphone" />
<preference name="orientation" value="default" />
<preference name="fullscreen" value="true" />
<preference name="permissions" value="none" />
<preference name="target-device" value="universal" />
<preference name="webviewbounce" value="true" />
<preference name="prerendered-icon" value="true" />
<preference name="stay-in-webview" value="false" />
<preference name="ios-statusbarstyle" value="black-opaque" />
<preference name="detect-data-types" value="true" />
<preference name="exit-on-suspend" value="false" />
<preference name="show-splash-screen-spinner" value="true" />
<preference name="auto-hide-splash-screen" value="true" />
<preference name="disable-cursor" value="false" />
<preference name="android-minSdkVersion" value="14" />
<preference name="android-installLocation" value="auto" />
<gap:plugin name="com.phonegap.plugins.barcodescanner" />
<gap:plugin name="org.apache.cordova.battery-status" />
<gap:plugin name="org.apache.cordova.camera" />
<gap:plugin name="org.apache.cordova.media-capture" />
<gap:plugin name="org.apache.cordova.console" />
<gap:plugin name="org.apache.cordova.contacts" />
<gap:plugin name="org.apache.cordova.device" />
<gap:plugin name="org.apache.cordova.device-motion" />
<gap:plugin name="org.apache.cordova.device-orientation" />
<gap:plugin name="org.apache.cordova.dialogs" />
<gap:plugin name="org.apache.cordova.file" />
<gap:plugin name="org.apache.cordova.file-transfer" />
<gap:plugin name="org.apache.cordova.geolocation" />
<gap:plugin name="org.apache.cordova.globalization" />
<gap:plugin name="org.apache.cordova.inappbrowser" />
<gap:plugin name="org.apache.cordova.media" />
<gap:plugin name="org.apache.cordova.network-information" />
<gap:plugin name="org.apache.cordova.splashscreen" />
<gap:plugin name="org.apache.cordova.vibration" />
<preference name="webviewbounce" value="false" />
<preference name="DisallowOverscroll" value="false" />
<preference name="disallowOverscroll" value="false" />
<preference name="exit-on-suspend" value="true" />
<access origin="*" subdomains="true" />
录音机
函数startRecording()
{
var src=“FinalAudio.wav”;
myMedia=新媒体(src、onSuccess、onError);
myMedia.startRecord();
警报(“开始记录”);
}
函数onSuccess(){
console.log(“为录制而创建的音频”);
}
函数onError(错误){
警报('code:'+error.code+'\n'+
'消息:'+error.message+'\n');
}
函数stopRecording()
{
myMedia.stopRecord();
警报(“停止记录”);
}
window.onload=函数()
{
文件。添加的监听器(“deviceready”,OnDeviceraddy,false);
}
函数ondevicerady()
{
document.getElementById(“btnStart”).addEventListener('click',startRecording,false);
document.getElementById(“btnStop”).addEventListener('click',stopRecording,false);
}
开始录音
停止录音
config.xml
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<title>Recorder</title>
<script type="text/javascript" charset="utf-8" src="cordova.js"> </script>
<script type="text/javascript" charset="utf-8">
<script>
function startRecording()
{
var src = "FinalAudio.wav";
myMedia = new Media(src, onSuccess, onError);
myMedia.startRecord();
alert("Started recording");
}
function onSuccess() {
console.log("Created Audio for Recording");
}
function onError(error) {
alert('code: ' + error.code + '\n' +
'message: ' + error.message + '\n');
}
function stopRecording()
{
myMedia.stopRecord();
alert("Stopped recording");
}
window.onload = function()
{
document.addEventListener("deviceready", onDeviceReady, false);
}
function onDeviceReady()
{
document.getElementById("btnStart").addEventListener('click', startRecording, false);
document.getElementById("btnStop").addEventListener('click', stopRecording, false);
}
</script>
</head>
<body>
<button id="btnStart">Start Recording</button>
<button id="btnStop">Stop Recording</button>
</body>
</html>
<?xml version='1.0' encoding='utf-8'?>
<widget id="com.domainurl.name" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:gap="http://phonegap.com/ns/1.0">
<name>New Recorder</name>
<description>
Hello World sample application that responds to the deviceready event.
</description>
<author email="support@phonegap.com" href="http://phonegap.com">
PhoneGap Team
</author>
<gap:platform name="ios" />
<gap:platform name="android" />
<gap:platform name="winphone" />
<preference name="orientation" value="default" />
<preference name="fullscreen" value="true" />
<preference name="permissions" value="none" />
<preference name="target-device" value="universal" />
<preference name="webviewbounce" value="true" />
<preference name="prerendered-icon" value="true" />
<preference name="stay-in-webview" value="false" />
<preference name="ios-statusbarstyle" value="black-opaque" />
<preference name="detect-data-types" value="true" />
<preference name="exit-on-suspend" value="false" />
<preference name="show-splash-screen-spinner" value="true" />
<preference name="auto-hide-splash-screen" value="true" />
<preference name="disable-cursor" value="false" />
<preference name="android-minSdkVersion" value="14" />
<preference name="android-installLocation" value="auto" />
<gap:plugin name="com.phonegap.plugins.barcodescanner" />
<gap:plugin name="org.apache.cordova.battery-status" />
<gap:plugin name="org.apache.cordova.camera" />
<gap:plugin name="org.apache.cordova.media-capture" />
<gap:plugin name="org.apache.cordova.console" />
<gap:plugin name="org.apache.cordova.contacts" />
<gap:plugin name="org.apache.cordova.device" />
<gap:plugin name="org.apache.cordova.device-motion" />
<gap:plugin name="org.apache.cordova.device-orientation" />
<gap:plugin name="org.apache.cordova.dialogs" />
<gap:plugin name="org.apache.cordova.file" />
<gap:plugin name="org.apache.cordova.file-transfer" />
<gap:plugin name="org.apache.cordova.geolocation" />
<gap:plugin name="org.apache.cordova.globalization" />
<gap:plugin name="org.apache.cordova.inappbrowser" />
<gap:plugin name="org.apache.cordova.media" />
<gap:plugin name="org.apache.cordova.network-information" />
<gap:plugin name="org.apache.cordova.splashscreen" />
<gap:plugin name="org.apache.cordova.vibration" />
<preference name="webviewbounce" value="false" />
<preference name="DisallowOverscroll" value="false" />
<preference name="disallowOverscroll" value="false" />
<preference name="exit-on-suspend" value="true" />
<access origin="*" subdomains="true" />
新录音机
Hello World示例应用程序,用于响应deviceready事件。
电话差距小组
在文档中,说明IOS路径如下:
Files can be recorded and played back using the documents URI:
var myMedia = new Media("documents://beer.mp3")
在android中不清楚,可能在/media或/data文件夹中
它不在/媒体或/数据中。这取决于你如何创造它。或者如果它已经在存储它的设备上
这是一本书。在您的情况下,“当前目录”与index.html所在的目录或根目录相同
注意:如果您使用的是CLI,那么您是而不是使用Phonegap构建。在这种情况下,config.xml是index.html下面的一个目录,但音频文件仍然位于相同的相对目录中
最后,如果你不是使用Phonegap构建,请说出来
以下是工作代码(源代码中有更多注释)。——祝你好运
function onDeviceReady() {
var audioFile = "";
if (device.platform === "iOS") {
// iOS picks it up fom the current directory
audioFile = "ice_cream_truck.wav";
} else if (device.platform == 'Android') {
audioFile = "/android_asset/www/fanfare3.ogg";
}
// Don't do much with this right now. Just play it.
my_media = new Media(audioFile, onSuccess, onError);
// The 'numberOfLoops' is iOS only.
my_media.play({ numberOfLoops: 99 });
}
但我为安卓工作,所以我需要安卓的答案。