У меня есть веб-браузер для Android, и я могу позволить пользователю использовать свой собственный javascript внутри обратного вызова window.onload (он полностью изолирован, и я лично не вижу угрозы безопасности). Проблема возникает, если введено что-то вроде следующего
while(true){
}
Что касается Java, я запускаю таймер, и через 5 секунд, если JavaScript все еще работает, я пытаюсь остановить веб-просмотр. Я пробовал разные вещи:
webView.stopLoading();
webView.loadData("", "text/html", null);
webView.freeMemory();
webView.pauseTimers();
webView.destroy();
Class.forName("android.webkit.WebView").getMethod("onPause", (Class[]) null).invoke(webView, (Object[]) null);
каждый становится немного более отчаянным :). Ничего не работает, и поток продолжает использовать процессор, пока я не выйду из приложения. Кто-нибудь знает, как я могу это правильно остановить?
Любая помощь очень ценится,
Ian