2012-03-24 2 views
1

Приложение для Android, которое я создал, работает очень хорошо, за исключением телефонов с Android 4.0 (ICS). Пользователи сообщают, что они только видят серый фон.Неизвестная проблема с WebView на ICS

Я попытался протестировать это с помощью эмулятора Android, но у меня нет никаких стеков или ошибок (хотя я не могу проверить, действительно ли видео играет, поскольку оно находится на эмуляторе).

Вот код:

WebView player = (WebView) findViewById(R.id.player); 
player.getSettings().setLoadWithOverviewMode(true); 
player.getSettings().setUseWideViewPort(true); 
player.getSettings().setJavaScriptEnabled(true); 
player.getSettings().setJavaScriptCanOpenWindowsAutomatically(false); 
player.getSettings().setPluginState(WebSettings.PluginState.ON); 
player.setWebViewClient(new JoinDOTAWebViewClient()); 
player.setKeepScreenOn(true); 
player.setBackgroundColor(R.drawable.background); 
player.setVerticalScrollBarEnabled(false); 
player.setHorizontalScrollBarEnabled(false); 

flashObject = changeDimensions(flashObject); 
String actualURL = wrapActualURL(getVideoID(flashObject)); 
player.loadUrl(actualURL); 

Если вам нужна дополнительная информация, не стесняйтесь спрашивать. Спасибо!

+0

Эй, если вы не возражаете, отправляя APK где-то у меня есть Galaxy Nexus с ICS я могу проверить это на для тебя, у меня есть некоторые системные инструменты, которые позволяют мне смотреть на журналы на телефоне, чтобы я мог дать некоторое представление (также могу сказать, смогу ли я повторно создать, я думаю, что теперь есть опция ОС для отключения плагинов в браузере, мне любопытно, если это отменяет ваши попытайтесь установить PluginState. – shaunhusain

+0

На самом деле, просто дважды проверьте его в настройках браузера в расширенном разделе: Включите плагины, но я честно не помню значение по умолчанию, у меня оно установлено на «Always On», другие варианты «по требованию» и «выкл». – shaunhusain

+0

приложение находится в Google Play здесь: https: //play.go ogle.com/store/apps/details?id=com.dokgu.joindota также весь мой код, весь проект можно найти на GitHub: https://github.com/dokgu/JoinDOTA – dokgu

ответ

0

Должен опубликовать в качестве ответа, потому что я хочу получить скриншот для вас на случай, если вы хотите установить diff, прежде чем я смогу вытащить ваш код и фактически отладить. Однако я не вижу ничего очевидного.

Debug Output

Открыть изображение в новой вкладке, чтобы увидеть в полный размер.

Я очистил журналы, отфильтровал их до вашего приложения, затем запустил приложение, выбрал один прямой эфир, не работал, не ошибся, вернулся в VOD, выбрал видео там, ничего не загрузил, вернулся , и это результирующий журнал до сих пор.

ah убирать фильтр и сканировать через журналы немного больше. Я нашел что-то подходящее: 03-24 16: 22: 33.928: W/webview (2507): java.lang.Throwable: Warning: метод WebView был вызван в потоке 'WebViewCoreThread'. Все методы WebView должны быть вызваны в потоке пользовательского интерфейса. Будущие версии WebView могут не поддерживать использование других потоков.

enter image description here

+0

Ну, у нас такой же результат. Ничего явно неправильного, кажется, поп, даже в эмуляторе. – dokgu

+0

Я не уверен, что это значит, но я предполагаю, что я должен воспроизводить видео в отдельной теме? Как нить, которую я использовал для заполнения списка livestreams и VOD? – dokgu

+0

Я не уверен, что с этим делать, но похоже, что это может быть проблемой, нашел другой подобный вопрос с ответом, основанным на предупреждении, но ответ не был принят, поэтому не уверен, что он работает: http://переполнение стека.com/questions/9621257/ads-show-on-honeycomb-webview-but-not-ics-webview – shaunhusain

Смежные вопросы