Android: веб-просмотр для запуска SWF, который воспроизводит FLV. - PullRequest
0 голосов
/ 07 октября 2011

Работа над созданием флэш-проекта для воспроизведения из локального приложения / папки на планшете Samsung Galaxy 10.1. Проект в основном представляет собой флэш-файл, который ссылается на XML для списка воспроизведения, который содержит ссылки на другие SWF-файлы или FLV-видео, которые хранятся в подпапке ресурсов.

Используя видео, netConnection и netStream для проигрывания FLV, попробовал FLVPlayback на мгновение, но без insta-fix.

Проект был встроен в html и отлично работает на машинах, на которых он используется, как локальных, так и с сервера. Он «работает» от веб-сайта к приложению, но становится громоздким, и интернет не будет доступен, когда эти планшеты используются.

(Но я думаю, что важно отметить, что воспроизведение FLV работает из Интернета на планшет, поэтому я предполагаю, что ответ на мои проблемы может заключаться в некотором ограничении разрешений, о котором я не знаю.)

Мне повезло с приложением, которое просто просматривало веб-страницу и загрузило основной SWF:

WebView wv = new WebView(this);
WebSettings webSettings = wv.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setPluginsEnabled(true);
wv.loadUrl("file:///android_asset/DemoV6/main.swf");
setContentView(wv);

Он успешно загружает SWF-файлы из списка воспроизведения и воспроизводит их, но как только он попадает на FLV,
netStream выдает NetStream.Play.StreamNotFound:[object NetStream], и с небольшим количеством фальсификации присяжных netConnection выскакивает NetConnection.Connect.Closed:[object NetConnection]

[ tl / dr : (Android3.1 / galaxy 10.1) -> swf -> flv == problem]

Итак вопрос в том, что мне нужно изменить / добавить, чтобы сделать этот SWF-файл, который воспроизводит FLV, который хорошо воспроизводится из Интернета, но не открывает FLV из локального приложения? (Кроме того, я подозреваю, что мне нужно позднее сохранить FLV-файлы для уменьшения размера приложения, но это другая загадка)

1 Ответ

0 голосов
/ 10 октября 2011

Нашли способ обойти это. Попытка встроить FLV в папку активов для компиляции, по-видимому, была не лучшим способом для начала. внешняя загрузка файлов дала мне желаемый результат.

if (!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
    Log.d(TAG, "No SDCARD");
} else {
    webView.loadUrl("file://"+Environment.getExternalStorageDirectory()+"/Folder/main.swf");
}
...