打开本地html文件的方法
有些html文件放在本地磁盘和sdcard,如何用打开这个网页呢?
这种应用在测试时非常有用。
有2个方法:
1. 使用文件管理器
如ES等,需要幸运的是你的文件管理器直接用浏览器打开。
2. 在浏览器输入地址
访问本地磁盘和SD卡上的HTML,前部分content://com.android.htmlfileprovider是Provider的标准,后面是程序目录。
比如sdcard的tesl.html
直接在浏览器里输入content://com.android.htmlfileprovider/sdcard/test.html回车就可以看到网页了。
在代码
webView.loadUrl("content://com.android.htmlfileprovider/sdcard/test.html")
如果是其它程序的私有html文件,这样做会失败。
这是由于com.android.htmlfileprovider的权限不够,如果是重写一个私有的HtmlProvider位于同一个应用中,应该能解决问题。然后就参考了原来的com.android.htmlfileprovider
源代码,改写了下。问题解决了,使用私有的HTMLProvider,可以轻松的访问手机内存中,程序私有目录下的html文件。
网上有例子,你可以搜索!
本地页面通过IE不能够打开常由于以下原因:1、路径或文件名错误,你需要检查一下是不是这个问题,IE8以上是会自动更改大小写的,所以可以排除是大小写问题;2、文件不存在,此问题在非第一次访问的刷新时才会出现,第一次访问的话,地址栏输入后会提示你文件不存在,如果不是的话就需要查看一下是不是不小心删除了或者拖走了;3、html文件的后缀名是否正确,通常是XXX.html或XXX.htm,但后缀名错误通常是以普通文本的形式显示,并非是无法打开,不知你是否是这种情况;4、地址被跳转,需要查看下你的代码中是否在加载事件中做了页面跳转,如果有的话,肯定不会显示当前的页面的,而出现错误页面也是由于被跳转的页面有问题。另有可能地址被写入HOSTS文件,清空HOSTS文件里的内容即可(路径:C:WINDOWS/system32/drivers/etc)。还有可能是IE浏览器被做了跳转设置,需要检查你的IE浏览器设置;5、IE浏览器本身的问题。IE如果出现问题,肯定会影响打开网页的,或者被植入木马什么的,需要你进行下病毒查杀或者是进行一下IE浏览器修复,浏览器修复也可以解决上一点浏览器设置的问题;6、IE的安全级别问题,降低IE安全级别。执行“工具→Internet选项”菜单,选择“安全”选项卡,单击“默认级别”按钮,拖动滑块降低默认的安全级别。7、IE浏览器被设置在本地防火墙的阻止访问列表、错误的防火墙策略等,可尝试检查策略、降低防火墙安全等级或直接关掉试试是否恢复正常;8、网络协议(特别是TCP/IP协议)或网卡驱动损坏,需要重装网卡驱动和网络协议(打开运行——输入cmd回车——输入“netsh int ip reset c:\resetlog.txt”回车,等同于重新安装TCP/IP协议效果,“resetlog.txt”文件是用来记录命令执行结果的日志文件,该参数选项必须指定);9、杀毒软件的实时监控问题,关闭杀软重新访问看有没有问题,如果没问题需要考虑更换杀软了,或者你可以得知杀软是如果限制的。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)