4 Mart 2010, PERŞEMBE
Nasıl bir web Görünümü web sayfası içeriğini alabilirim?
Android, bir sayfa görüntüleme WebView
bir ben var.
Nasıl tekrar sayfayı almadan sayfa kaynağını alabilirim?
WebView
bir dize verir getPageSource()
yöntemin nasıl olması gerektiği gibi görünüyor, ama ne yazık ki değil.
Eğer JavaScript etkinleştirirsem, bu çağrının içeriğini almak için koymak için uygun JavaScript nedir?
webview.loadUrl("javascript:(function() { "
"document.getElementsByTagName('body')[0].style.color = 'red'; "
"})()");
CEVAP
3 ŞUBAT 2011, PERŞEMBE
Bu geç bir cevap olduğunu biliyorum, ama ben de aynı sorun vardı, çünkü bu soru buldum. Lexandera.com this post cevabı buldum sanırım. Aşağıdaki kod, temelde sitesinden kes-yapıştır. Hile yapmak gibi görünüyor.
final Context myApp = this;
/* An instance of this class will be registered as a JavaScript interface */
class MyJavaScriptInterface
{
@JavascriptInterface
@SuppressWarnings("unused")
public void processHTML(String html)
{
// process the html as needed by the app
}
}
final WebView browser = (WebView)findViewById(R.id.browser);
/* JavaScript must be enabled if you want it to work, obviously */
browser.getSettings().setJavaScriptEnabled(true);
/* Register a new JavaScript interface called HTMLOUT */
browser.addJavascriptInterface(new MyJavaScriptInterface(), "HTMLOUT");
/* WebViewClient must be set BEFORE calling loadUrl! */
browser.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url)
{
/* This call inject JavaScript into the page which just finished loading. */
browser.loadUrl("javascript:window.HTMLOUT.processHTML('<head>' document.getElementsByTagName('html')[0].innerHTML '</head>');");
}
});
/* load a web page */
browser.loadUrl("http://lexandera.com/files/jsexamples/gethtml.html");
Bunu Paylaş:
Nasıl Oracle SQL BLOB metinsel içeriği...
Nasıl bir dizinin tüm içeriğini görmez...
Nasıl web sayfası alabilirim'nin ...
Nasıl bir yönlendirme sayfası jQuery k...
Nasıl div içeriğini daha büyük değil y...