refs:
http://stackoverflow.com/questions/7604436/xmlparseentityref-no-name-warnings-while-loading-xml-into-a-php-file
http://boyadn.blog.163.com/blog/static/74230736201012292739317/
1)case
原来android上可以正常加载的本地webpage,忽然不能加载了,发现只是js的写发有些差异。
原来<script>xxx</script> 现在<script/>,按理2者都是合法的。
原来加载方法 webview.loadDataWithBaseURL("webpagePath_xx",htmlString,"text/html","utf-8",null);
但实际加载文件格式未xhtml,又称html5,格式要求更严格。
solution:
更改加载方法 webview.loadDataWithBaseURL("webpagePath_xx",htmlString,"application/xhtml+xml","utf-8",null);
修改后OK。
原来的web view的mime type 其实不对,但由于web page格式是严格的符合2者(html/xhtml)要求,所以也可正常加载。
或者web page的编写中写成兼容模式,应该也是可以的(未尝试)。
2)case:由于修改了mine type,导致原来注入的一段js 实效。
原来的js是直接append到html后面的(这样也可以work,可见html是很宽容的),在xhtml中是不允许的,所以插入中body文中;
另外js中的 &&,>,<都要转义了。不然提示 “xmlParseEntiyRef”错误,参见refs。