Я создаю небольшую библиотеку Android в Eclipse, открыв новую активность, поместив в нее WebView и загрузив страницу веб-сайта WebView с видео. Я использую WebView как:Android Webview Видео не работает
webView.setWebChromeClient(new WebChromeClient() {
@Override
public void onProgressChanged(WebView view, int newProgress) {
if (newProgress == 100) {
showContentOrLoadingIndicator(true);
}
}
});
webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
});
и
webView.loadUrl("http://www.example.com/mobile/player/" + VeediUtils.GAME_ID + "/" + ((JSONObject)VeediUtils.LEVELS.get(gameLevel - 1)).getInt("unique_id") + ".html" + ((debugState == 0) ? ("") : ("?debug=veedi")));
Следующий шаг, я построил новый проект, добавил мой первый проект, как Android зависимость, и все работает нормально, как это должно быть. Но когда я отдал свою библиотеку другому разработчику (у меня нет доступа к его коду), и он добавил его как зависимость от Android к своему проекту, он обнаружил проблему: он слышит звук, но вместо видео он видит черный экран. Итак, вот вопрос: что это может быть в его приложении, что нарушает мое видео в WebView? Благодарю.
Нет, я использую только формат * .mp4, и здесь проблема: это видео показано в моем проекте, но не показано в его проекте на тех же устройствах ... P.S. спасибо за эту библиотеку, я проверю. – Simcha
Это странно, оно должно работать, если оно находится на одном устройстве. Он каким-то образом изменил код? Может быть, вы можете попытаться удалить метод setWebViewClient из своего веб-представления, поскольку он, похоже, ничего не делает? – JonasCz
Нет, у него есть только мои скомпилированные классы. И мне нужно «setWebViewClient», потому что мне нужен его метод «shouldOverrideUrlLoading», потому что это устройство не запрашивает у пользователя в первый раз: выбрать браузер для моего url в WebView. – Simcha