Android网页浏览器开发详解(一)

Android网页浏览器开发详解(一)

请支持原创,尊重原创,转载请注明出处:http://blog.csdn.net/kangweijian(来自kangweijian的csdn博客)

Android 网页浏览器开发器开发详解(一),主要通过WebView类实现载入网页,刷新网页,向前载入历史网页,向后载入历史网页和缩放网页等五个功能。

Android 网页浏览器开发器开发详解(二),主要实现书签和历史记录的保存,删除,编辑等功能。

Android 网页浏览器开发器开发详解(三),主要通过AsyncTask类实现一键访问多个网站的功能。

1、 WebView

a)     WebView是个用来显示网页的视图类。这个类基于你可以滚动你的网页浏览器或者简单的显示一些在线内容在你的Activity。它使用WebKit渲染引擎去实现:载入网页、向前载入历史网页和向后载入历史网页,缩放网页以及执行文字搜索等功能。

b)    使用WebView自定义属于自己的网页浏览器

i.             修改WebView的内部类WebSettings,通过getSettings()得到WebSettings这里我们使用该类的方法有:

1.        setJavaScriptEnabled()方法启用JavaScript。

2.        setBuiltInZoomControls(boolean)可以启用WebView内置的缩放功能。注意:如果当组件的高度和宽度设置为WRAP_CONTENT缩放功能无效。

3.      setUseWideViewPort(true);设置任意比例缩放。缩放后,要使内容适配屏幕,不超出屏幕外显示,实现换行。这方面效果应该由html控制,而不是webview控制。例如<pstyle="word-break:break-all">test</p>实现自动换行。

4.     addJavascriptInterface(Object,
String)
方法把Java对象注入到WebView中,以便于可以通过JavaScript访问网页。当然这么做也是有风险的,因为一些可能的问题网页能够与应用直接接触。

ii.         创建和设置WebChromeClient子类。当一些可能会影响浏览器UI的事情发生时WebChromeClient类会被调用。例如:进度条更新和JavaScript警告被发送。这里我们使用该类的方法有:

1.      shouldOverrideUrlLoading(WebView view, String url)。当有新的URL加载到WebView(譬如说点击某个链接),该方法会决定下一步的决定。如返回true,意极“不要处理这个URL,我自己来”。如返回false,意即“WebView去加载这个URL,我不会对它做任何处理”

iii.         创建和设置WebViewClient子类。当一些影响内容呈现的事情发生时WebViewClient类会被调用。例如错误或者报告提交。你可以在这里中断URL的加载。这里我们使用该类的方法有:

1.      onProgressChanged(WebView view,
intnewProgress)。这个方法告知我们加载当前页面的进展程序。newProgress的值在0到100之间。

2.      onReceivedTitle(WebView view, String title)。当页面的文档标题改变时,这个方法会告知我们。

c)      WebView默认不提供像浏览器那样的组件、默认不支持JavaScript和忽略网络错误。除了阅读网页外,用户不能与网页做其他的交互。如果你想要一个完整的成熟的网页浏览器,你可以调用浏览器应用:

Uri uri =Uri.parse("http://www.baidu.com")
 Intentintent = new Intent(Intent.ACTION_VIEW, uri);
 startActivity(intent);  

2、  添加必要的权限(AndroidManifest.xml)

a)      <uses-permission
android:name="android.permission.INTERNET"
/>

 

请支持原创,尊重原创,转载请注明出处:http://blog.csdn.net/kangweijian(来自kangweijian的csdn博客)

学习《Android编程权威指南》心得与笔记                   by2015.2.20早

时间: 2024-12-08 15:40:24

Android网页浏览器开发详解(一)的相关文章

Android高德地图开发详解

这段时间开发的时候用到了高德地图,对高德地图开发有心得体会,现在分享给大家,对我开发过百度地图的我来说,总体来说高德地图Demo,没有百度讲解的详细 个人更偏向于使用百度地图,但是没办发,项目需要使用高德地图,我开发的是定位,更具经纬度添加标记,标记点击事件,以及路线规划废话不多说,上代代码 那么首先导入高德给的jar,包,我开发的是2d地图, 这个包结构图,高德题图api也提供了步骤,就不多说了 下面添加权限,设置key <uses-permission android:name="an

【转】Android Camera 相机开发详解

在Android 5.0(SDK 21)中,Google使用Camera2替代了Camera接口.Camera2在接口和架构上做了巨大的变动, 但是基于众所周知的原因,我们还必须基于 Android 4.+ 系统进行开发.本文介绍的是Camera接口开发及其使用方法,通过本文章,你将全面地学会Camera接口的开发流程. 本图文与GitHubPages原文均为本人原创 Paste_Image.png 调用系统相机/其它App完成拍摄操作 如果你的App的需求只是调用摄像头拍照并拿到照片,老司机的

Android Notification通知栏开发详解

Notification是在你的应用常规界面之外展示的消息.当app让系统发送一个消息的时候,消息首先以图表的形式显示在通知栏.要查看消息的详情需要进入通知抽屉(notificationdrawer)中查看.通知栏和通知抽屉(notificationdrawer)都是系统层面控制的,你可以随时查看,不限制于app. 图 1.通知栏的通知 图 2. notificationdrawer中的通知. Notification 的设计 作为android UI中很重要的组成部分,notification

Android WebView 开发详解

Android WebView 开发详解 1.概览: Android WebView 做为承载网页的载体控件,他在网页显示的过程中会产生一些事件,并回调给我们的应用程序,以便我们在网页加载过程中做应用程序想处理的事情.比如说客户端需要显示网页加载的进度.网页加载发生错误等等事件. WebView提供两个事件回调类给应用层,分别为WebViewClient,WebChromeClient开发者可以继承这两个类,接手相应事件处理.WebViewClient 主要提供网页加载各个阶段的通知,比如网页开

Android相机开发详解(一)

Android相机开发详解(一) 请支持原创,尊重原创,转载请注明出处:http://blog.csdn.net/kangweijian(来自kangweijian的csdn博客) Android相机开发能够实现打开相机,前后摄像头切换,摄像预览,保存图片,浏览已拍照图片等相机功能. Android相机开发详解(一)主要实现打开相机,摄像预览,前后置摄像头切换,保存图片等四个功能. Android相机开发详解(二)主要实现翻页浏览相片,触控缩放浏览图片,删除图片,发送图片等四个功能. Andro

Android开发经典书籍下载——《Android 4高级编程》《疯狂Android讲义》《Android应用开发详解(郭宏志)》《Android应用案例开发大全》《Android 3D游戏开发技术》

这是我收集的关于android开发方面的经典书籍,高清PDF电子版,可以在我的百度网盘免费下载,希望对需要的朋友有帮助. 目录: <Android 4高级编程>(附完整源代码) <疯狂Android讲义> <Android应用开发详解(郭宏志)> <Android应用案例开发大全> <Android 3D游戏开发技术> <Android内核剖析 柯元旦> <深入理解Android  卷1> <深入理解Android

Android Widget 开发详解(二)

转载请标明出处:http://blog.csdn.net/sk719887916/article/details/47027263 不少开发项目中都会有widget功能,别小瞧了它,他也是android的七大组件之一,对widget陌生的朋友可以阅读下我的上篇文章< Android Widget工作原理详解(一)> 今天我们就实现一个可以滑动的widet,熟悉下一个普通widget的开发. 一 创建AppWidgetProvider 此类是widget的控制核心,主要控制添加,删除,更新等.他

Android开发详解之ListView详解一

列表ListView介绍和实例 1.ListView  -- ListActivity -- ListAdapter 2.ArrayAdapter结合ListView进行显示 3.SimpleAdapter结合ListView进行显示 4.处理单击ListView事件,处理选择ListView的事件 5.使用SimpleCursorAdapter与ListView进行关联 ListView : 要让一个ListView显示出来需要的3个条件: 1.ListView  --- 需要被显示的列表 2

Android Google Map v2详解之:开发环境配置

Android Google Map v2详解之:开发环境配置                                       --转载请注明出处:coder-pig 说在前面: 说到地图定位,现在越来越多的社交app都加入了地图和定位的功能模块,用户很多的时候 也会用到这些东东,比如,到外面吃饭,次次吃饭前都要拍下照片发到朋友圈,定个位,然后发条说说, 炫耀一下自己今天吃了什么高大上的东东,炫耀和攀比心理我懂,不过,一次下班去吃饭,看到一妹子 吃饭,拍照+发朋友圈,足足用了大概20