Вы можете оформить заказ на весь проект xKode WebKit вместе со всем проектом с открытым исходным кодом для Android по ссылке, предоставленной Kerubu (я сделал это несколько месяцев назад, это занимает несколько гигабайт и часов ...) и, вероятно, создать свой собственный свободный .soбиблиотека (я не знал), но я сомневаюсь, что это самый простой способ решить эту проблему.
Редактировать: оказывается, что android отражается на github, вот проект WebCore .
Существует большая вероятность того, что ваше приложение гораздо легче устранить, чем проект WebKit!
Я позволю себе высказать дикое предположение:
Существуют известные ошибки с javascript инъекцией (также здесь ) только для некоторых устройствкоторые, похоже, влияют и на некоторые html-фреймворки приложений (например, PhoneGap), вы используете метод addJavascriptInterface
?Если так, то есть обходной путь, вызывая WebChromeClient
onJsPrompt
и анализируя строку для выполнения собственных вызовов из веб-просмотра.
Java to javascript:
webview.loadUrl("javascript:alert('toto');");
javascript дляJava:
в JavaScript:
prompt('this is the message', 'this is the default value');
и в Java:
WebChromeClient chromeClient = new WebChromeClient(){
@Override
public boolean onJsPrompt(WebView view, String url, String message, String defaultValue, android.webkit.JsPromptResult result){
Log.d("javascriptPrompt", "prompt : "+url+"-"+message);
// should log "javascriptPrompt, "prompt: null - this is the message"
// parse the message and do whatever you want here
result.confirm();
return true;
}
}
webview.setChromeClient(chromeClient);