当前位置: 首页 > news >正文

如何将html文件放入Android,关于android:将HTML文件加载到WebView中

我有一个本地html页面以及它要指向的其他几个资源(css文件和Javascript库),我想将它们加载到WebView中。 如何实现呢?

也许这不是进行下一步的最佳方法,但我仍在尝试。

对我来说,如果我将点html -webView.loadUrl(" file:/// android_asset / filename")删除,它将起作用。

您为什么不想接受@Joes答案的任何原因?

webview.loadUrl("文件:///android_asset/sample.html"); - 点击这里

最简单的方法可能是将您的Web资源放入资产文件夹,然后调用:

webView.loadUrl("file:///android_asset/filename.html");

有关Java和Webview之间的完整通信,请参见此

更新:资产文件夹通常是以下文件夹:

/src/main/assets

可以在.iml文件中的资产文件夹配置设置中将其更改为:

请参阅文章将资产文件夹放置在Android Studio中的位置

这个问题确实是一个常见问题。

还有什么其他方式?

如果您非常反对使用资产,则可能还可以将其从字符串中加载。(请参阅stackoverflow.com/questions/4543349/load-local-html-in-webview)

应该将其标记为正确答案,因为确实如此。

如果资产路径发生变化,则将中断。

@ SK9如果缺少任何其他资产或预期文件,同样适用,例如,如果您更改启动活动类的名称并且不更新AndroidManifest.xml来反映这一点。 (个人而言,Id建议将URL /文件路径放在字符串资源中,然后从那里访问它,以使该路径与程序的所有其他字符串数据一起使用,但这实际上与资产/资源依赖关系无关。)

对我来说,如果我将点html -webView.loadUrl(" file:/// android_asset / filename")删除,它将起作用。

对于那些不知道如何创建资产文件夹的用户,请右键单击"应用"->"新建"->"文件夹"->"资产文件夹",然后单击"完成"。 Android Studio将以正确的路径创建资产文件夹。而且您只需要将html文件移动到新的资产文件夹。参考:stackoverflow.com/questions/18302603/

是的,这是可行的,但是显示的是非英文字母错误。

我对ios有同样的问题,有人遇到过这个问题吗?如果是,请分享您的解决方案,我尝试了其他访问方式,但没有用,我尝试了解决方案forum.qt.io/topic/47495/upload-ios-image-with-qt/11

Android Studio似乎不再具有"新建>资产文件夹"选项。更新了答案以包括正确的文件路径。请注意,assets平行于res文件夹结构。

该示例可能有助于:

WebView lWebView = (WebView)findViewById(R.id.webView);

File lFile = new File(Environment.getExternalStorageDirectory() +"/");

lWebView.loadUrl("file:///" + lFile.getAbsolutePath());

在该示例中,外部存储器中有html,最好将其打包在应用程序中

这对.mht文件有效吗?

在这种情况下,使用WebView#loadDataWithBaseUrl()优于WebView#loadUrl()!

webView.loadDataWithBaseURL(url,

data,

"text/html",

"utf-8",

null);

url:url / path指向目录的字符串,所有JavaScript文件和html链接都有其来源。如果为null,则为about:blank。

数据:包含您的hmtl文件的字符串,例如,使用BufferedReader读取

更多信息:WebView.loadDataWithBaseURL(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String)

什么是数据变量?请提供一个例子。

接受的答案对我不起作用,这对我有用

WebSettings webSetting = webView.getSettings();

webSetting.setBuiltInZoomControls(true);

webView1.setWebViewClient(new WebViewClient());

webView.loadUrl("file:///android_asset/index.html");

相关文章:

  • nginx3解析php
  • 荣耀8 android8.0 2018,荣耀这次很良心! 荣耀8全系可以升级安卓8.0
  • web测试方法
  • html5文字游戏制作工具,橙光文字游戏制作工具
  • MySQL timestampdiff 和 timestampadd 的用法
  • android 特殊机型问题,这四款机型十分特殊,购买需要谨慎!
  • Python可迭代对象中的添加和删除(add,append,pop,remove,insert)
  • android tabbar框架,Android 自定义tabbar 用viewPage实现
  • jdbc参数
  • Linux运维人员最常用150个命令汇总
  • html js文件调用函数,我怎么把js文件里的函数调用到html文件中,并使两个函数依次运行?...
  • [poj] 3422 Kaka's Matrix Travels || 最小费用最大流
  • html引用json文件没有数据,json文件怎么使用
  • html做微信logo,HTML5新特性之用SVG绘制微信logo
  • bacula-web 安装部署流程
  • 分享的文章《人生如棋》
  • [微信小程序] 使用ES6特性Class后出现编译异常
  • 【css3】浏览器内核及其兼容性
  • android图片蒙层
  • Git学习与使用心得(1)—— 初始化
  • idea + plantuml 画流程图
  • Java面向对象及其三大特征
  • PAT A1050
  • Python 反序列化安全问题(二)
  • Stream流与Lambda表达式(三) 静态工厂类Collectors
  • 大快搜索数据爬虫技术实例安装教学篇
  • 日剧·日综资源集合(建议收藏)
  • 王永庆:技术创新改变教育未来
  • 学习笔记DL002:AI、机器学习、表示学习、深度学习,第一次大衰退
  • 一加3T解锁OEM、刷入TWRP、第三方ROM以及ROOT
  • 在electron中实现跨域请求,无需更改服务器端设置
  • 阿里云IoT边缘计算助力企业零改造实现远程运维 ...
  • ​Python 3 新特性:类型注解
  • ​七周四次课(5月9日)iptables filter表案例、iptables nat表应用
  • ​水经微图Web1.5.0版即将上线
  • #我与Java虚拟机的故事#连载08:书读百遍其义自见
  • $var=htmlencode(“‘);alert(‘2“); 的个人理解
  • (13):Silverlight 2 数据与通信之WebRequest
  • (附源码)spring boot火车票售卖系统 毕业设计 211004
  • (附源码)springboot助农电商系统 毕业设计 081919
  • (四)Tiki-taka算法(TTA)求解无人机三维路径规划研究(MATLAB)
  • (一)u-boot-nand.bin的下载
  • (转载)深入super,看Python如何解决钻石继承难题
  • .bat批处理(二):%0 %1——给批处理脚本传递参数
  • .md即markdown文件的基本常用编写语法
  • .NET Framework 3.5中序列化成JSON数据及JSON数据的反序列化,以及jQuery的调用JSON
  • .NET MAUI学习笔记——2.构建第一个程序_初级篇
  • .NET Standard / dotnet-core / net472 —— .NET 究竟应该如何大小写?
  • .NET 设计模式—简单工厂(Simple Factory Pattern)
  • .Net 中Partitioner static与dynamic的性能对比
  • .NET/C# 利用 Walterlv.WeakEvents 高性能地定义和使用弱事件
  • @RestControllerAdvice异常统一处理类失效原因
  • @拔赤:Web前端开发十日谈
  • [AIGC] Redis基础命令集详细介绍
  • [Android Pro] Notification的使用