Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/468.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 未捕获引用错误:未定义媒体_Javascript_Android_Cordova - Fatal编程技术网

Javascript 未捕获引用错误:未定义媒体

Javascript 未捕获引用错误:未定义媒体,javascript,android,cordova,Javascript,Android,Cordova,我一直在尝试让媒体元素在部署到Android时在PhoneGap中工作。以下是我到目前为止所做的: 下载并安装以下内容: JAVA_HOME = C:\Progra~1\Java\jre7 ANT_HOME = E:\Program Files (x86)\apache-ant-1.9.2 NODEJS = E:\Program Files (x86)\nodejs E:\PhoneDev\adt-bundle-windows-x86_64-20130729\sdk\platfor

我一直在尝试让媒体元素在部署到Android时在PhoneGap中工作。以下是我到目前为止所做的:

下载并安装以下内容:

JAVA_HOME = C:\Progra~1\Java\jre7  
ANT_HOME = E:\Program Files (x86)\apache-ant-1.9.2  
NODEJS = E:\Program Files (x86)\nodejs  
E:\PhoneDev\adt-bundle-windows-x86_64-20130729\sdk\platform-tools  
E:\PhoneDev\adt-bundle-windows-x86_64-20130729\sdk\tools  
%ANT_HOME%\bin  
%NODEJS%  
E:\Program Files\Java\jdk1.7.0_25\bin  
npm install -g phonegap
phonegap create media-app
cd media-app
phonegap local build android
<feature name="Media">  
    <param name="android-package" value="org.apache.cordova.AudioHandler" />  
</feature>  
<uses-permission android:name="android.permission.RECORD_AUDIO" />  
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />  
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  
media-app\platforms\android\cordova\run.bat  
Java(版本7更新25)

Java SE开发工具包7u25(64位)

蚂蚁(1.9.2)

NodeJS(v0.10.18 64位)

Android SDK(适用于Windows的ADT捆绑包)64位-版本2013-07-29
安装文件夹:E:\PhoneDev\adt-bundle-windows-x86\u 64-20130729

设置环境变量:

JAVA_HOME = C:\Progra~1\Java\jre7  
ANT_HOME = E:\Program Files (x86)\apache-ant-1.9.2  
NODEJS = E:\Program Files (x86)\nodejs  
E:\PhoneDev\adt-bundle-windows-x86_64-20130729\sdk\platform-tools  
E:\PhoneDev\adt-bundle-windows-x86_64-20130729\sdk\tools  
%ANT_HOME%\bin  
%NODEJS%  
E:\Program Files\Java\jdk1.7.0_25\bin  
npm install -g phonegap
phonegap create media-app
cd media-app
phonegap local build android
<feature name="Media">  
    <param name="android-package" value="org.apache.cordova.AudioHandler" />  
</feature>  
<uses-permission android:name="android.permission.RECORD_AUDIO" />  
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />  
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  
media-app\platforms\android\cordova\run.bat  
验证是否将以下路径添加到PATH环境变量(用分号分隔):

JAVA_HOME = C:\Progra~1\Java\jre7  
ANT_HOME = E:\Program Files (x86)\apache-ant-1.9.2  
NODEJS = E:\Program Files (x86)\nodejs  
E:\PhoneDev\adt-bundle-windows-x86_64-20130729\sdk\platform-tools  
E:\PhoneDev\adt-bundle-windows-x86_64-20130729\sdk\tools  
%ANT_HOME%\bin  
%NODEJS%  
E:\Program Files\Java\jdk1.7.0_25\bin  
npm install -g phonegap
phonegap create media-app
cd media-app
phonegap local build android
<feature name="Media">  
    <param name="android-package" value="org.apache.cordova.AudioHandler" />  
</feature>  
<uses-permission android:name="android.permission.RECORD_AUDIO" />  
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />  
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  
media-app\platforms\android\cordova\run.bat  
安装PhoneGap(现在是3.0.0版):

JAVA_HOME = C:\Progra~1\Java\jre7  
ANT_HOME = E:\Program Files (x86)\apache-ant-1.9.2  
NODEJS = E:\Program Files (x86)\nodejs  
E:\PhoneDev\adt-bundle-windows-x86_64-20130729\sdk\platform-tools  
E:\PhoneDev\adt-bundle-windows-x86_64-20130729\sdk\tools  
%ANT_HOME%\bin  
%NODEJS%  
E:\Program Files\Java\jdk1.7.0_25\bin  
npm install -g phonegap
phonegap create media-app
cd media-app
phonegap local build android
<feature name="Media">  
    <param name="android-package" value="org.apache.cordova.AudioHandler" />  
</feature>  
<uses-permission android:name="android.permission.RECORD_AUDIO" />  
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />  
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  
media-app\platforms\android\cordova\run.bat  
创建phonegap应用程序:

JAVA_HOME = C:\Progra~1\Java\jre7  
ANT_HOME = E:\Program Files (x86)\apache-ant-1.9.2  
NODEJS = E:\Program Files (x86)\nodejs  
E:\PhoneDev\adt-bundle-windows-x86_64-20130729\sdk\platform-tools  
E:\PhoneDev\adt-bundle-windows-x86_64-20130729\sdk\tools  
%ANT_HOME%\bin  
%NODEJS%  
E:\Program Files\Java\jdk1.7.0_25\bin  
npm install -g phonegap
phonegap create media-app
cd media-app
phonegap local build android
<feature name="Media">  
    <param name="android-package" value="org.apache.cordova.AudioHandler" />  
</feature>  
<uses-permission android:name="android.permission.RECORD_AUDIO" />  
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />  
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  
media-app\platforms\android\cordova\run.bat  
构建phonegap应用程序:

JAVA_HOME = C:\Progra~1\Java\jre7  
ANT_HOME = E:\Program Files (x86)\apache-ant-1.9.2  
NODEJS = E:\Program Files (x86)\nodejs  
E:\PhoneDev\adt-bundle-windows-x86_64-20130729\sdk\platform-tools  
E:\PhoneDev\adt-bundle-windows-x86_64-20130729\sdk\tools  
%ANT_HOME%\bin  
%NODEJS%  
E:\Program Files\Java\jdk1.7.0_25\bin  
npm install -g phonegap
phonegap create media-app
cd media-app
phonegap local build android
<feature name="Media">  
    <param name="android-package" value="org.apache.cordova.AudioHandler" />  
</feature>  
<uses-permission android:name="android.permission.RECORD_AUDIO" />  
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />  
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  
media-app\platforms\android\cordova\run.bat  
加载项媒体应用程序\platforms\android\res\xml\config.xml:

JAVA_HOME = C:\Progra~1\Java\jre7  
ANT_HOME = E:\Program Files (x86)\apache-ant-1.9.2  
NODEJS = E:\Program Files (x86)\nodejs  
E:\PhoneDev\adt-bundle-windows-x86_64-20130729\sdk\platform-tools  
E:\PhoneDev\adt-bundle-windows-x86_64-20130729\sdk\tools  
%ANT_HOME%\bin  
%NODEJS%  
E:\Program Files\Java\jdk1.7.0_25\bin  
npm install -g phonegap
phonegap create media-app
cd media-app
phonegap local build android
<feature name="Media">  
    <param name="android-package" value="org.apache.cordova.AudioHandler" />  
</feature>  
<uses-permission android:name="android.permission.RECORD_AUDIO" />  
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />  
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  
media-app\platforms\android\cordova\run.bat  
应用程序运行正常,但当我尝试播放声音时,出现以下错误:

Uncaught ReferenceError: Media is not defined at  
file:///android_asset/www/index.html  
我还尝试在Eclipse上做同样的事情,Eclipse与Android SDK捆绑在一起。我创建了一个AVD并从Eclipse运行了应用程序。我也犯了同样的错误。
一段时间以来,我一直在努力了解问题所在。如果有人能解释一下这个问题,我会非常感激的

从3.0版开始,PhoneGap将设备级API作为插件实现。使用CLI的plugin命令(如中所述)为项目添加或删除此功能:

您需要将媒体插件添加到项目中-

phonegap local plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-media.git

在项目目录中运行上面的命令,你应该被设置。

那么“index.html”文件中有什么?在这个页面上搜索“完整示例”:我用命令行添加了插件:cordova plugin add,但它仍然不起作用:(从phonegap 5.2.0开始,
phonegap local
命令不推荐使用