Android WebView用于在 android 中显示网页。可以从相同的应用程序或 URL 加载网页。它用于在 android 活动中显示在线内容。

Android WebView 使用 webkit 引擎来显示网页。

android.webkit.WebView 是 AbsoluteLayout 类的子类。

Android WebView 类的loadUrl()loadData()方法用于加载和显示网页。

Android WebView 示例

让我们看看使用 Web 视图显示 baidu.com 网页的简单代码。

WebView mywebview = (WebView) findViewById(R.id.webView1);
mywebview.loadUrl("http://www.baidu.com/");  

让我们看看使用 Web 视图显示 HTML 网页的简单代码。在这种情况下,html 文件必须位于资产目录中。

WebView mywebview = (WebView) findViewById(R.id.webView1);
mywebview.loadUrl("file:///android_asset/myresource.html");  

让我们看另一个显示字符串的 HTML 代码的代码

String data = "<html><body><h1>Hello, Javatpoint!</h1></body></html>";
mywebview.loadData(data, "text/html", "UTF-8");  

完整的 Android WebView 示例

让我们看一个完整的 Android WebView 示例。

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context=".MainActivity"><WebViewandroid:layout_width="match_parent"android:layout_height="match_parent"android:id="@+id/webView"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintLeft_toLeftOf="parent"app:layout_constraintRight_toRightOf="parent"app:layout_constraintTop_toTopOf="parent" /></androidx.coordinatorlayout.widget.CoordinatorLayout>

要在应用程序中本地添加网页(.html、.jsp),需要将它们放置在 assets 文件夹中。资产文件夹创建为:右键单击应用程序 -> 新建 -> 文件夹 -> 资产文件夹 -> 主目录,或者简单地在主目录中创建资产目录。

MainActivity.java
package com.example.webview;import android.os.Bundle;
import android.webkit.WebView;
import android.webkit.WebViewClient;import androidx.appcompat.app.AppCompatActivity;public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);WebView mywebview = (WebView) findViewById(R.id.webView);mywebview.loadUrl("http://www.baidu.com");//系统默认会通过手机浏览器打开网页,为了能够直接通过WebView显示网页,则必须设置mywebview.setWebViewClient(new WebViewClient(){@Overridepublic boolean shouldOverrideUrlLoading(WebView view, String url) {//使用WebView加载显示urlview.loadUrl(url);//返回truereturn true;}});/*        String data = "<html><body><h1>Hello, World!</h1></body></html>";mywebview.loadData(data, "text/html", "UTF-8");*///mywebview.loadUrl("file:///android_asset/myresource.html");}
}

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.example.webview"><applicationandroid:allowBackup="true"android:icon="@mipmap/ic_launcher"android:label="@string/app_name"android:roundIcon="@mipmap/ic_launcher_round"android:supportsRtl="true"android:usesCleartextTraffic="true"android:theme="@style/Theme.WebView"><activityandroid:name=".MainActivity"android:exported="true"android:label="@string/app_name"android:theme="@style/Theme.WebView.NoActionBar"><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity></application><uses-permission android:name="android.permission.INTERNET"></uses-permission></manifest>

输出:

如果加载 HTML 页面,让我们看看输出。

如果您加载 baidu.com 网页,让我们看看输出。

Android WebView 示例相关推荐

  1. Android WebView示例教程

    Android WebView is used to display HTML in an android app. We can use android WebView to load HTML p ...

  2. Android WebView常见问题及解决方案汇总

    转载,请声明出处: 时之沙:http://blog.csdn.net/t12x3456 Android WebView常见问题解决方案汇总: 就目前而言,如何应对版本的频繁更新呢,又如何灵活多变地展示 ...

  3. android 工程搭建,Android ApiDemo示例工程的创建

    一般SDK中都会带有一些示例程序,说明具体用法,Android SDK也是如此.它提供了一些ApiDemo示例,详细说明了Android中主要API,分为以下几大类: 1.App 2.Content ...

  4. android web canvas,HTML5 - Canvas无法在Android WebView的第一次加载时渲染

    我正在开发基于HTML5画布的游戏,该游戏在现有应用程序的WebView中运行.在第一次运行游戏时,它会在后台成功加载,所有日志都表明它已准备就绪并正在运行.但是,WebView中不显示任何内容.如果 ...

  5. android和webview交互,android webview与原生交互

    demo.html完整示例 demo 点击调用android代码 点击调用android代码并传递参数 function androidCallJs() { document.getElementBy ...

  6. 带有书签的Android WebView

    To display a web page as the part of the application we use android WebView in our application. We'v ...

  7. Android Webview历史高危漏洞与攻击面分析

    文章目录 前言 WebView基础 极简Demo程序 JS调用Android 加载远程HTML 接口攻击场景 漏洞示例程序 本地攻击程序 url白名单校验 代码执行漏洞 JAVA反射机制 历史漏洞PO ...

  8. Android WebView使用和优化

    本文介绍自己在使用WebView的过程中遇到的一些问题的解决方法和对WebView的一些优化实践 浏览器缓存知识介绍: 浏览器缓存之 Expires , max-age,   Etag ,  Last ...

  9. 【eoe Android特刊】第二十四期Android WebView

    一.Android WebView是什么 1.1Aandroid WebView一些基本概念 在android手机中内置了一款高性能webkit内核浏览器,在SDK中封装为一个叫做WebView组件. ...

  10. 关于android webview使用过程中遇到的一些问题总结

    开发WebView的时候遇到了各种问题,在此总结一下. 一.webview的使用方法 1.1.layout中添加WebView的视图. <WebViewandroid:id="@+id ...

最新文章

  1. 新冠能被根除吗?医学顶刊BMJ:比根除天花难不少、比脊髓灰质炎容易一点
  2. java生成扑克牌----java基础学习总结
  3. IOS上的 Audio Memos SE 如何分享和传输录音到电脑?
  4. 【BJDCTF 2nd—MISC/Crypto】做题+复现记录
  5. dubbo 整合 zipkin,最简单的方式,亲测有效
  6. Python凭啥这么受欢迎?
  7. python面试题No2
  8. VSCode:vscode设置侧边资源管理器文字大小
  9. oracle user_source表
  10. 微软产品内部协议大公开
  11. c语言音阶数组,【项目6-任务7-小组14】蜂鸣器演奏简单乐曲及简易电子琴制作...
  12. Flutter插件开发--获取Android手机电池信息
  13. mysql编写1到n的奇数和_编写程序。输入任意整数n,计算1到n的奇数和
  14. SAP HANA中日期格式转换
  15. 夺宝奇兵 (优先队列 + 贪心 + 暴力枚举)
  16. 类似火车头的采集器-免费任意数据采集器
  17. 高校奖学金评定系统的设计与实现(论文+源码)_kaic
  18. 独家 | 当热钱不再涌动——2019人工智能行业冷暖观察
  19. 2020最值得读的java书,2020年最值得读的10本书,你看过几本?
  20. 【CentOS 7 Web服务器配置】

热门文章

  1. Mac壁纸软件 - 动态 高清 炫酷 4K 精美壁纸下载
  2. 多种前端框架的优缺点
  3. python英语单词 扇贝英语安卓下载_扇贝单词英语版app下载-扇贝单词英语版v3.5.803 安卓版-腾牛安卓网...
  4. Spring学习笔记 Spring项目介绍
  5. 超级记事本android,基于Android的超级记事本APP设计.doc
  6. 智慧教育平台android,智慧教育平台APP 1.0.2 安卓版
  7. Multisim元件库介绍以及中英文全面解析
  8. 泛微e9隐藏明细表_泛微e-cology的Ecode二次开发无侵入定制说明
  9. VS2022开发Arduino(提供Visual.Micro.Processing.Sketch.dll)
  10. rufus安装win10