单标签页简易浏览器实现

一个只有一个标签页的简易浏览器

这里写图片描述

具有以下功能:

  • 可以记录浏览记录,可前进后退
  • 可以刷新当前网页
  • 可以输入网址并且通过Enter键或者右侧的按钮发起导航
  • 具有比较人性化的界面

引子

首先,为什么要写这么一个简单的浏览器呢?

这是因为工作使然。工作上正好想要在当前的PC客户端软件里嵌入一个浏览器,可以使用C++代码调用Js,也可以使用Js调用C++代码,这个demo也就相当于这个需求的前导调研了。

参考技术

首先,这个demo来源于SOUI开源界面库。这里我将SOUI的开源库里面的demo中的浏览器给生生的抠了出来,优化了下界面和部分逻辑。

其中,浏览器内核使用的是wke。因为wke足够简单,对于我这种刚了解浏览器内核的人来说,再适合不过了,而且wke的功能也比较强大,编译出来的文件也非常小。

实现步骤

  1. 创建一个SOUI界面,书写基本的xml布局。

    想要了解SOUI的请点击这里。基本上对于SOUI有一定了解的,这一步都不难,也就不再赘述了。

  2. 将wke内核抽象为SOUI的一个窗口浏览器控件类。

    这关键的一步,SOUI的demo里面已经完成的非常好了,请参照代码即可。完成了这一步,基本就可以完成网页的显示了。

  3. 创建标签页类。

    参照SOUI的demo可见。不再赘述。

思路总结

总而言之,我只是站在了两位巨人的肩膀上。一个是SOUI的作者,另一个是wke的作者。后者封装了webkit弄出来了一个小巧强大的浏览器内核,前者将其封装成了界面的一个控件。
学习新东西的最好办法,就是依样画葫芦,做一些自己喜欢的东西,然后改进它,深入底层了解它。

代码分享

想要源代码的同学,可以先配置好SOUI环境,然后下载本人的代码编译即可。项目代码在SingleTab_MyBrowser里获得即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值