それはとても簡単に思えますが、ほとんど不可能になりつつあります。WebView に表示されているテキストがあり、それを取得する必要があります。
私はあらゆる種類のことを試しました。
webview.loadUrl("javascript:window.HTMLOUT.showHTML(document.innerText);");
webview.loadUrl("javascript:window.HTMLOUT.showHTML(document.documentElement.innerText);");
webview.loadUrl("javascript:window.HTMLOUT.showHTML(document.getElementsByTagName('auth')[0].innerHTML);");
webview.loadUrl("javascript:window.HTMLOUT.showHTML(document.getElementsByTagName('body')[0].innerText);");
webview.loadUrl("javascript:window.HTMLOUT.showHTML(document.getElementsByTagName('html')[0].innerText);");
そして、他のたくさんのもの。これら 2 つの呼び出しで undefined になります。
常にランダムな xml として返そうとします。
class MyJavaScriptInterface
{
@SuppressWarnings("unused")
public void showHTML(String html)
{
Log.d("SHOWING", html);
new AlertDialog.Builder(myApp)
.setTitle("HTML")
.setMessage(html)
.setPositiveButton(android.R.string.ok, null)
.setCancelable(false)
.create()
.show();
}
public void showHTML(Object html)
{
Log.d("Some random object", "Some random object");
}
public void showHTML(XML html)
{
Log.d("Some random XML", "Some random XML");
}
}
それはそれがどのように見えるかです。
助けはありますか?