Android开发之WebView的开发使用(源码分享)
假设我们想提供一个web应用程序(或仅仅是一个网页)作为client应用程序的一部分,我们能够使用WebView。WebView类是Android的视图类的扩展,它同意您显示web页面的一部分活动布局。
担它不包含不论什么一个充分发展的web浏览器的特点,如导航控件或一个地址栏。全部的WebView,默认情况下,显示一个web页面。
Webview有什么应用场景呢,我们能够使用WebView用来显示提供一些信息,比方您可能须要更新,如一个终端用户协议或用户指南。在你的Android应用程序,您能够创建一个Acitivity包括WebView。然后使用,显示你主持的在线文档。
还有一个场景,在该场景中,WebView能够帮助假设您的应用程序提供数据给用户,总是须要一个网络连接检索数据,如电子邮件。在这样的情况下,您可能会发现建立一个WebView在Android应用程序显示一个web页面显示全部用户数据,而不是运行一个网络请求,然后解析数据并呈如今一个Android布局来的easy。
调用WebView有的过程例如以下所看到的
(1)
将WebView控件加入到您的应用程序,仅仅需包含活动中的< WebView >元素的Layout。
<?xml version="1.0" encoding="utf-8"?>
<WebView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/webview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
(2)
使用loadUrl()载入一个WebView。
WebView myWebView = (WebView) findViewById(R.id.webview);
myWebView.loadUrl("http://www.example.com");
(3)
在清单文件加入网络授权
<manifest ... >
<uses-permission android:name="android.permission.INTERNET" />
...
</manifest>
关于JavaScript
假设你计划在你的负载的web页面WebView使用JavaScript,您必须启用JavaScript WebView。一旦启用了JavaScript,您还能够创建您的应用程序代码和JavaScript代码之间的接口。
JavaScript 在WebView默认情况下是禁用的。你能够使它通过附加WebSettings来实现他。您能够检索与getSettings WebSettings(),然后用setJavaScriptEnabled启用JavaScript()。
WebView myWebView = (WebView) findViewById(R.id.webview);
WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
关于历史返回
当你的WebView重写URL载入时,它会自己主动累积的历史訪问web页面。你能够向后和向前导航历史goBack()和goForward()。
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// Check if the key event was the Back button and if there's history
if ((keyCode == KeyEvent.KEYCODE_BACK) && myWebView.canGoBack()) {
myWebView.goBack();
return true;
}
// If it wasn't the Back key or there's no web page history, bubble up to the default
// system behavior (probably exit the activity)
return super.onKeyDown(keyCode, event);
}
Android开发之WebView的开发使用(源码分享)的更多相关文章
- Android开发之Handler的用法(源码分享)
Handler主要接受子线程发送的数据, 并用此数据配合主线程更新UI.. 当应用程序启动时.Android首先会开启一个主线程 (也就是UI线程) , 主线程为管理界面中的UI控件,进行事件分发. ...
- C/C++编程笔记:C语言开发球球大作战(源码分享),你想试试吗?
游戏背景 <球球大作战>是Superpop一款自主研du发的免费手机网络游戏. 以玩家间的实时互动PK产生游戏乐趣为设计宗旨,通过简单的规则将玩家操作直接转化为游戏策略,体验智谋碰撞的战斗 ...
- Android开发之WebView具体解释
概述: 一个显示网页的视图.这个类是你能够滚动自己的Web浏览器或在你的Activity中简单地显示一些在线内容的基础.它使用了WebKit渲染引擎来显示网页,包含向前和向后导航的方法(通过历史记录) ...
- Android: 在WebView中获取网页源码
1. 使能javascript: ? 1 webView.getSettings().setJavaScriptEnabled(true); 2. 编写本地接口 ? 1 2 3 4 5 final c ...
- Android:得到WebView当前页的html源码
WebView没有提供直接的API,需要用JavaScript变通处理一下.本文试图总结一个最简单.优雅的代码. 有两步: 1.先创建一个JavaScript接口类: class MyJavaScri ...
- [Android] 随时拍图像处理部分总结及源码分享
http://blog.csdn.net/eastmount/article/details/45492065#comments [Android] 图像各种处理系列文章合集 http://blog. ...
- Android安全开发之WebView中的地雷
Android安全开发之WebView中的地雷 0X01 About WebView 在Android开发中,经常会使用WebView来实现WEB页面的展示,在Activiry中启动自己的浏览器,或者 ...
- android软件开发之webView.addJavascriptInterface循环渐进【一】
本篇文章由:http://www.sollyu.com/android-software-development-webview-addjavascriptinterface-cycle-of-gra ...
- Android混合开发之WebView与Javascript交互
前言: 最近公司的App为了加快开发效率选择了一部分功能采用H5开发,从目前市面的大部分App来讲,大致分成Native App.Web App.Hybrid App三种方式,个人觉得目前以Hybri ...
随机推荐
- Centos7基本命令
shell基本命令 linux命令行的组成结构 linux系统命令操作语法格式 命令 空格 参数 空格 文件路径或者需要处理的内容 rm -rf /tmp/* ls -la /home ...
- mybatis 中 foreach 的性能问题及调优
1.mybatis中最初的sql语句 SELECT 参数1, 参数2, 参数3 FROM 表 WHERE 条件参数1 in <foreach item="item" inde ...
- Log4J2的 PatternLayout
Log4J2 PatternLayout 参考 日志样例 : 2018-10-21 07:30:05,184 INFO - DeviceChannelServiceImpl.java:434[defa ...
- 研磨JavaScript系列(五):奇妙的对象
在JavaScript中,只有object和function两种东西有对象化的能力.我们先来说说函数的对象化能力. 任何一个函数都可以为其动态地添加或去除属性,这些属性可以是简单类型,可以是对象,也可 ...
- 关于Adaper的相关用法
使用BaseAdapter的话需要重载四个方法: getCount getItem getItemId getView getView是用来刷新它所在的ListView的.在每一次item从屏幕外滑进 ...
- Android基础TOP3:Activity的线性,相对,帧和表格布局的概括
线性布局 LinearLayout: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android&q ...
- Cuder - 用C++11封装的CUDA类
以前写cuda:初始化环境,申请显存,初始化显存,launch kernel,拷贝数据,释放显存.一个页面大部分都是这些繁杂但又必须的操作,有时还会忘掉释放部分显存. 今天用C++11封装了这些CUD ...
- UICollectionView(一)基本概念
整体预览 高等级的包含和管理(Top-level containment and management) UICollectionView UICollectionViewController UIC ...
- ffmpeg从内存读取文件
正常情况,ffmpeg直接从文件读取 AVFormatContext * _ctx = NULL; avformat_open_input(&_ctx, _filePath, 0, 0); 我 ...
- git 的简单使用(2)
一般情况下,你通常直接在文件管理器中把没用的文件删了,或者用rm命令删了: $ rm test.txt 你可以使用 git rm test.txt来删除 然后用git commit -m " ...