Intereting Posts
Выбранный каталог не является допустимым домом для Android SDK Как я могу получить доступ к сохраненным значениям компонента из другого класса Canvas: попытка использования переработанного растрового изображения android.graphics.Bitmap в android Как отключить программную панель в WebView Как избежать мягкой клавиатуры, подталкивающей мой макет? Есть ли способ использовать junit.extensions.TestSetup для тестов на Android? AsyncTaskLoader vs Asyncqueryhandler Пролистайте такие действия, как SnapChat? Android-студия logcat не работает Как проверить, что папка пуста Сбой сборки Android Studio с «Задачей» не найден в корневом проекте «MyProject» ». Android прокручивает, используя ViewPager без вкладок Android.database.CursorWindowAllocationException при перемещении курсора Ant jar error: Execute failed: java.io.IOException: не удается запустить программу … $ {aapt} ": ошибка = 2, нет такого файла или каталога Android Studio: Gradle: ошибка: не удается найти символьную переменную

Воспроизведение локального звука в телефонной зазоре

У меня есть .wav файл в моей папке www . Я использую jQuery со следующим кодом. Сигналы отключены, но звук не воспроизводится. Я делаю что-то неправильно?

 <script type="text/javascript" charset="utf-8" src="phonegap-0.9.2.js"></script> <script type="text/javascript" charset="utf-8" src="jquery.js"></script> <script type="text/javascript" charset="utf-8"> $(document).ready(function () { window.alert("READY!"); document.addEventListener("deviceready", onDeviceReady, true); function onDeviceReady(){ window.alert("OK@!"); var snd = new Media("test.wav"); snd.play(); } }); </script> 

Звук просто не играет.

Попробуйте дать абсолютный локальный путь. Например

Новые медиа ("/ android_asset / www / test.wav");

Это должно работать на Android. Надеюсь, они исправит это в PhoneGap, поскольку это что-то вроде ошибки в поддержке кросс-устройств.

Вы можете использовать window.location.pathname чтобы получить путь к вашему приложению в любом приложении PhoneGap. Таким образом, вам не нужно жестко кодировать его для Android. На iPhone это будет выглядеть примерно так:

/var/mobile/Applications/{GUID}/{appname}.app/www/index.html

И это на Android:

/android_asset/www/index.html

/index.html file:// /index.html , добавьте file:// и добавьте файл test.wav .

Демо: http://jsfiddle.net/ThinkingStiff/r7eay/

Код:

 function getPhoneGapPath() { var path = window.location.pathname; path = path.substr( path, path.length - 10 ); return 'file://' + path; }; var snd = new Media( getPhoneGapPath() + 'test.wav' ); 

У меня есть другая версия getPhonegapPath, она обнаруживает, когда вы используете Android:

 function getPhoneGapPath() { var path = window.location.pathname; path = path.substr( path, path.length - 10 ); var devicePlatform = device.platform; if(devicePlatform=="Android"){ path = 'file://'+path; } return path; };