Подтвердить что ты не робот

Тег HTML5 <audio> на Android

Я нашел много потоков, обсуждая поддержку тега на Android. Пока выглядит, что даже Android Froyo 2.2 не может воспроизводить аудио (я сделал тесты на Nexus One).

Согласно веб-странице www.html5test.com, сам тег поддерживается, но в браузере нет кодеков (mp3, ogg..). Итак, как я могу решить проблему?

Пока я вижу только одно решение, используйте встроенный Flash или Flash-плеер, который может воспроизводить mp3. Это верно? Это единственный способ воспроизвести .mp3 или другой аудиопоток в веб-браузере Android?

Поддерживает ли Android 2.3 Gingerbread некоторый аудиопоток?

Большое спасибо BR Стен

Добавлено позже. Рабочее решение, которое я наконец использовал, представляет собой небольшой Flex.swf для потоковой передачи. Его можно легко интегрировать с веб-страницей HTML (связь Flex-Javascript работает очень хорошо). Единственная проблема заключается в том, что на некоторых телефонах Flash Player не переустанавливается и должен быть сначала загружен с Android Market.

Добавлен еще позже: ну, элемент <audio> не работает даже на Android 2.3 - я не знаю, что делает в Google, что такая простая проблема. Использование Flex Player - это okey, но проблема в том, что на некоторых телефонах Adobe Flash Player не может быть установлен с Android-рынка, потому что есть некоторые требования к Adobe HW, такие как 1 ГГц процессор и т.д. Некоторые производители, такие как HTC, предоставляют собственные Flash-проигрыватели, но они очень плохие и не работают правильно с AS 3.0... Пока все работает отлично, особенно на телефонах Samsung (например, Nexus S или Galaxy S).

4b9b3361

Ответ 1

То, что вы выкопали, согласуется с тем, с чем я столкнулся. 2.2 поддерживает звуковой тег, но не имеет кодеков для его поддержки, это, по-видимому, ошибка, которая была исправлена ​​в релизах за пределами Froyo:

http://code.google.com/p/android/issues/detail?id=9372

Я использовал звуковой тег с mp3 файлом на своем Nexus S, там он работает правильно (для последней версии прошивки по крайней мере).

Ответ 2

Я забыл спросить сначала. Вы думаете о разработке приложения для Android или просто обычного веб-приложения? Для этого решения вам понадобится код Android.

Если вы не собираетесь использовать Android-код, вы можете пропустить остальную часть сообщения, извините!

=============================================== ===================================

Вот несколько трюков: вы можете использовать регулярные ссылки на свои аудиофайлы или использовать javascript для перенаправления на один из файлов (если вы разрешите Javascript), а затем переопределить загрузку Url, например:

mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
mWebView.setWebViewClient(new WebViewClient(){
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        if (url.endsWith(".ogg")){
            Log.d(TAG, "Reproducir archivo OGG");
            Uri tempPath = Uri.parse(url);
            MediaPlayer player = MediaPlayer.create(WebViewVideo.this, tempPath);
            player.start();
            return true;
        }else{
            return super.shouldOverrideUrlLoading(view, url);
        }
    }

});

Надеюсь, это поможет, это для меня!

С уважением.