Phonegap:在IOS设备上播放本地声音不起作用

时间:2016-05-08 11:16:41

标签: ios cordova

我在IOS上创建了一个Phonegap的应用程序,我需要为指定的动作播放声音。

从网址播放声音效果很好,但不能从本地来源播放。我尝试了不同的东西。

这是我的代码

<!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8"/>
        <meta name="format-detection" content="telephone=no"/>
        <meta name="msapplication-tap-highlight" content="no"/>
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <link rel="stylesheet" href="css/sisMedia.css"/>
        <link rel="stylesheet" href="css/sisMedia_custom.css"/>
        <link rel="stylesheet" href="css/jquery.mobile-1.4.5.min.css"/>
        <script src="js/jquery-2.2.0.min.js"></script>
        <script src="js/jquery.mobile-1.4.5.min.js"></script>
        <script src="js/jqm_custom.js"></script>
        <script src="js/jquery-validation/jquery.validate.min.js"></script>
        <title>Einlasskontrolle</title>
    </head>
    <body>

    <div data-role="header" id="header" data-position="fixed" data-theme="a">
        <h1>Audiotest</h1>
    </div><!-- /header -->

    <div data-role="page" data-title="Einlasskontrolle">
        <div role="main" class="ui-content">


            <button onclick="playAudio('audio/ok.mp3')">Play</button>
            <button onclick="playAudio('audio/ok.mp3',true)">Play</button>
            <button onclick="playAudio('https://test.sistecs.de/sismedia/files/admin/downloads/ok.mp3')">Play</button>

            <script>

                function playAudio(src, absolute) {
                    if (absolute == true) {
                        src = getPhoneGapPath() + src;
                    }
                    if (device.platform == 'Android') {
                        src = 'file://' + src;
                    }

                    var media = new Media(src, success, error_error);
                    media.play();
                }
                function success() {
                    // ignore
                }
                function error_error(e) {
                    alert('error ' + e.message);
                }

                function getPhoneGapPath() {
                    var path = window.location.pathname;
                    var sizefilename = path.length - (path.lastIndexOf("/") + 1);
                    path = path.substr(path, path.length - sizefilename);
                    return path;
                }

            </script>


        </div>
    </div>

    <div data-role="footer" id="footer" data-theme="b" data-position="fixed">
        <div data-role="navbar">
            <ul>
                <li><a href="index.html" data-icon="home" data-transition="slide">Home</a></li>
                <li><a href="scan.html" data-icon="video" data-transition="slide">Scan</a></li>
                <li><a href="setup.html" data-icon="gear" data-transition="slide">Setup</a></li>
            </ul>
        </div>
    </div>

    <script type="text/javascript" src="cordova.js"></script>


    </body>
    </html>

你能帮助我吗?

0 个答案:

没有答案