如何在使用 PhoneGap/Cordova 构建的 Android 应用程序中单击按钮时播放音频
How do I play audio on clicking a button in an Android app built using PhoneGap/Cordova?
我正在构建一个基本的类似音板的应用程序,它有几个播放声音的按钮。我正在使用PhoneGap/Cordova,并且正在使用PhoneGap Build服务将代码编译为APK。起初,我使用的是简单的HTML5 <audio>
标签,这些标签在桌面浏览器和Android浏览器中都可以正常工作,但是当打包到PhoneGap应用程序中时,没有播放任何声音。
我环顾四周,看到一些提到必须在PhoneGap中使用Media API而不是标准的HTML5音频,所以我通过以下代码更改切换到它。
我有以下功能:
function doPlay(soundId) {
var my_media = new Media("/android_asset/www/"+soundId+".mp3",
function() {
navigator.notification.alert('Success!', alertDismissed);
},
function(err) {
navigator.notification.alert('Error!', alertDismissed);
});
my_media.play();
}
每个按钮都有一个类似于下面的onclick
处理程序...
onclick="doPlay('sound1');"
这些文件与index.html
位于同一目录中,称为sound1.mp3
、sound2.mp3
等。函数alertDismissed()
也已定义,但它是空的。
但是,它仍然不起作用。咔嗒声无音。也没有'Success'
或'Error'
消息。是的,我已请求notification
和media
权限。
我在这里很困惑。有什么想法吗?
更新:按照@simon-macdonald的建议,我放置了本地文件的完整路径("/android_asset/www/"),但这仍然没有让应用程序工作。没有声音,没有错误/成功警报。:-(
文件的路径不正确。你想做:
var my_media = new Media("/android_asset/www/" + soundId+".mp3",
function() {
navigator.notification.alert('Success!', alertDismissed);
},
function(err) {
navigator.notification.alert('Error!', alertDismissed);
});
my_media.play();
查看我的迷你教程。
http://simonmacdonald.blogspot.ca/2011/05/using-media-class-in-phonegap.html
我有一种感觉,你的问题与你写的代码无关,但也许你忘记在你的头部分包含cordova javascript文件。
<script type="text/javascript" charset="utf-8" src="cordova-1.7.0.js"></script>
祝你好运。
- 使用电话间隙在Android应用程序中显示SQL Lite的数据
- 在cordova android应用程序中连接数据库
- 使用javascript将视频从我的android应用程序上传到youtube
- 在Android网络应用程序中查找SD卡的路径
- GCM推送通知,如果应用程序在手机中关闭(Phonegap Android)
- Ionic应用程序无法识别android手机中的语音
- 我需要学习Java才能使用phoneGap创建android应用程序吗
- javascript onclick不适用于android应用程序
- 在变量中保存值的最佳方法是在应用程序关闭后使用,然后使用apachecordova在android中重新启动
- 如何通过ibmworklight中的sql适配器从db2中检索或显示html页面上的数据?android混合应用程序开发
- 带有Apache Cordova的Android应用程序
- 示例 WebView 应用程序源代码 Android
- Phonegap 3.2.0 android应用程序后退按钮剪切仅适用于某些页面
- D3图表未在Android混合应用程序中显示
- 如何在android应用程序中下载图像
- 无法从GCM(phonegap应用程序android)接收注册
- 用于打包移动应用程序(Android、iOS)的Javascript错误日志记录/报告/跟踪器
- 如何使用AngularJS创建移动应用程序(Android,IOS,Blockberry)
- 代码不工作的Phonegap应用程序-Android
- 制作一个安全的PhoneGap/Cordova应用程序(Android)