我正在尝试在Android应用程序中调试WebView。我做了一些研究,发现weinre非常有用。我正在使用的是PhoneGap PhoneGap Debugging Tool.的weinre
但是令我感到困惑的是,它仅在使用本机在本机浏览器中进行调试时才能正常运行,而在我打开应用程序时却无法正常运行。
任何人都知道如何使其与webview一起使用吗?还是我必须在本地安装Weinre才能使其正常工作?
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button = (Button)this.findViewById(R.id.button1);
this.webview = (WebView)this.findViewById(R.id.webView1);
webview.setWebChromeClient(new WebChromeClient());
final String htmlPre = "<!DOCTYPE html><html lang=\"en\"><head><meta charset=\"utf-8\"> <script src='http://172.16.0.135:8080/target/target-script-min.js#anonymous'></script> <script>alert('hello')</script></head><body style='margin:0; pading:0; background-color: black;'>";
final String htmlCode =
" <embed style='width:100%; height:100%' src='http://www.platipus.nl/flvplayer/download/1.0/FLVPlayer.swf?fullscreen=true&video=http://www.platipus.nl/flvplayer/download/pl-600.flv&autoplay=true' " +
" autoplay='true' " +
" quality='high' bgcolor='#000000' " +
" name='VideoPlayer' align='middle'" + // width='640' height='480'
" allowScriptAccess='*' allowFullScreen='true'" +
" type='application/x-shockwave-flash' " +
" pluginspage='http://www.macromedia.com/go/getflashplayer' />" +
"";
final String htmlPost = "</body></html>";
this.webview.getSettings().setJavaScriptEnabled(true);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
webview.loadDataWithBaseURL("null", htmlPre+htmlCode+htmlPost, "text/html", "UTF-8", null);
}
});
Now I'm trying something new like this and it does not work anymore, any suggestion? Thanks :)
最佳答案
我在我的开发笔记本电脑(debian)上安装了weinre,并且在任何浏览器以及Android webview上都可以正常运行。
就像使用node.js安装weinre一样简单:
须藤npm -g install weinre
documentation中的文档
最后一个提示:启动服务器时,请记住进行更改
--boundHost [主机名| IP地址| -所有-]
如果您的服务器不在本地主机上。
关于android - 在Android WebView中使用Weinre进行调试,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16683403/