Android: веб-просмотр для запуска SWF, который воспроизводит FLV.
Работа над созданием флэш-проекта для воспроизведения из локального приложения / папки на планшете 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 == проблема]
Итак, вопрос в том, что мне нужно изменить / добавить, чтобы сделать этот SWF-файл, который воспроизводит FLV, который хорошо воспроизводится из Интернета, но не открывает FLV из локального приложения? (Кроме того, я подозреваю, что позже мне нужно будет сохранять внешне FLV, чтобы уменьшить размер приложения, но это другая загадка)
1 ответ
Нашли способ обойти это. Попытка встроить FLV в папку активов для компиляции, очевидно, была не лучшим способом для начала. внешняя загрузка файлов дала мне желаемый результат.
if (!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){
Log.d(TAG, "No SDCARD");
} else {
webView.loadUrl("file://"+Environment.getExternalStorageDirectory()+"/Folder/main.swf");
}