Это действительно вопрос из двух частей. Во-первых, можно ли определить, установлен ли Flash на Android-устройстве? Во-вторых, если он установлен, можно ли отображать флэш-видео в действии? Я думаю, вам придется использовать виджет WebView в своей деятельности для отображения содержимого Flash вместо чего-то вроде VideoView. Поддерживается ли Flash даже в виджете WebView или поддерживается только приложением браузера?
Определите, установлен ли Flash на Android, и вставьте Flash-видео в действие
Ответы (1)
Ответ на обе части ваших вопросов «да», причем вторая часть зависит от первой.
(1) Определение того, установлен ли Flash.
Используйте PackageManager, чтобы попытаться получить информацию о приложении для пакета Flash Player. Он выдаст исключение, что такой пакет не существует.
boolean flashInstalled = false;
try {
PackageManager pm = getPackageManager();
ApplicationInfo ai = pm.getApplicationInfo("com.adobe.flashplayer", 0);
if (ai != null)
flashInstalled = true;
} catch (NameNotFoundException e) {
flashInstalled = false;
}
(2) Если Flash установлен, вы можете отображать Flash-видео в своем действии, встраивая его в WebView. Плагин Flash обеспечивает такую же поддержку WebView, как и собственный браузер.
Если ваша проверка в части 1 возвращает false, лучше всего скрыть свой WebView и заменить его либо сообщением об ошибке, объясняющим требования к Flash, либо, что еще лучше, ссылкой для загрузки плагина Flash из Android Market.
person
Reto Meier
schedule
10.01.2011
Если вы собираетесь подключиться к Маркету при отсутствии Flash, вам, вероятно, следует проверить, установлен ли Маркет, прежде чем делать это, верно, Рето? ;)
- person Josh; 12.01.2011
@ Джош, это приложение доступно только на официальном рынке, так что я не слишком беспокоюсь об этом. На мой взгляд, Android-устройство без официальных приложений Google (gmail, market, карты, календарь и т. д.) не стоит того, чтобы его покупать.
- person Mark B; 13.01.2011
Вы упустили один ключевой момент: webView.getSettings().setPluginsEnabled(true); Вы будете крутить колеса некоторое время, пытаясь заставить это работать, пока не найдете эту настройку :)
- person Mark B; 14.01.2011
Обратите внимание, что на некоторых устройствах HTC установлен флеш-плеер, отличный от Adobe, пакет которого: com.htc.flash. Проверьте оба.
- person Trasplazio Garzuglio; 31.05.2011
FlashPlayer 11 не поддерживается на некоторых устройствах, поэтому приведенная выше ссылка ведет на страницу flashplayer, но вы не можете его скачать. Может ли кто-нибудь узнать, как определить совместимость устройства и перенаправить на правильную версию флеш-плеера?
- person App Work; 08.07.2012
К вашему сведению... Adobe официально прекратила разработку для мобильных устройств. Кроме того, в Google Play Store больше нет приложения Adobe Flash Player...
- person Yogesh; 19.12.2012
Я пробовал это на своем Nexus 4. Он говорит мне, что у него установлен Flash, но когда я пытаюсь просмотреть видео YouTube в веб-просмотре (включены плагины и jscript), я вижу только предварительный просмотр (неподвижный кадр с кнопку воспроизведения на нем), и когда я нажимаю кнопку воспроизведения, область видео становится серой и показывает значок, похожий на кинопленку. Я делаю что-то не так здесь?
- person Frank; 16.05.2013