Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1534812
  • 博文数量: 114
  • 博客积分: 10010
  • 博客等级: 上将
  • 技术积分: 1357
  • 用 户 组: 普通用户
  • 注册时间: 2006-11-19 18:13
文章分类
文章存档

2010年(8)

2009年(9)

2008年(27)

2007年(62)

2006年(8)

我的朋友

分类: C/C++

2008-12-31 16:22:58

北京理工大学  20981  陈罡

一直忙啊忙,没有时间更新博客。总算到年底了,可以有几天的时间喘口气了,万岁!!于是乎,抽点时间研究研究S60下面的浏览器技术,希望能够有所发现,对各位后来人有所帮助。

WebKit的鼎鼎大名相信很多开发者都非常熟悉,即使不熟悉的朋友,相信也听说过firefox火狐狸吧。包括google的chorme浏览器都是基于这个WebKit内核编写的。这么好用的内核,Nokia的S60平台自然不会放过,偶个人感觉symbian的核心开发者们似乎都很支持Open Source的组织,甚至他们可能自己就是狂热的Open Source爱好者。:P当然,偶的推断也不一定对,anyway,毕竟有消息说symbian系统要开源了,呵呵,偶自然会举双手赞成!希望nokia不要忽悠我们啊!

言归正传,偶现在就来详细描述一下开源的S60WebKit是如何在symbian的sdk环境里面编译的,本文是偶自己的编译笔记,以下是屏幕抓图,先把结果给大家秀一下,给大家一个“感性认识”:
S60WebKit只是一组DLL库,需要一个简单的调用界面,这个界面在S60WebKit项目里面就叫做S60WebUi,这个目录下面其实包含了一个非常简单的调用S60WebKit的DLL库的应用程序,名字就叫做Reindeer。如果各位能够跟着偶的说明一步一步做下来的话,应该可以在模拟器上面看到这个程序的。

hoho,这张图就显示了上面说的那个Reindeer程序打开以后的样子,默认的url似乎是连接到S60WebKit的某个本地的地址上去了。没关系,下一步,我们就要开始联网啦! 

这里就是输入了google的网址,然后单击“go”箭头图标以后,稍微等几秒钟以后看到的效果,在模拟器上自然是要选择“winsock”作为接入点联入互联网了,这一点要比s60 2nd的模拟器强太多太多了。偶还记得曾经多么简单的一个要求,花费了偶多么多的时间。。。

好了,这里就是能够看到手机版的google的搜索窗口了,看来目前S60WebKit已经能够工作了。下一步,就是输入点东西搜索一下试试,再怎么是骡子是马也要拉出来遛遛啊。

偶直接搜索自己的blog了,请各位不要笑话偶脸大,毕竟增加点访问量也是好的。。。
好,直接选择第一个,进去一下看看!很紧张,很激动,尽管这不是偶自己写的东西,但毕竟能够在偶的开发机器上能够编译,能够工作。。。

好了,可以看到cu的blog界面了,果然是可以工作的。这就是完整的浏览器了,而且是手机上可以用的,很多公司诸如ucweb,netfront之类的不知道看到这一幕究竟是跟偶一样共同欢欣鼓舞,还是深感忧虑。。。这就意味者很多开发者可以在不用投入很大精力的前提下,通过对S60WebKit进行裁减和修改完成一个“功能其全”的浏览器,从最终的效果上来看,不比这些专门做浏览器的公司花了大量人力物力做出来的浏览器差,但是从成本上来看,要低得多(当然也不一定了,毕竟全部看懂WebKit的大牛并不多,而且要价hoho,也应该不低,就看各位的水平了。)。这就为传统手机浏览器开发厂家划了一道底线,至少做出来的产品的效果要强于WebKit,要提供WebKit不支持的功能,例如flash插件啦,在线的mp3插件啦,视频插件啦,im插件啦等等,要让用户觉得与众不同才好。

基本的环境搭建方法:
官方的S60WebKit编译环境配置地址如下:

偶在此把偶的配置给写一下备忘:
(1)下载和安装symbian sdk,最好是S60 3rd版本的:
从种种迹象表明,s60 3rd fp1的sdk也是可以工作的,偶在此为了尽可能follow官方的步骤因此还是部分沿用了S60WebKit官方提供的编译方法。
选用: S60-SDK-0548-3.0-f.3.215f
这个版本的sdk,也就是最初的S60 3rd的sdk,目前这个版本的sdk已经不多见了,需要好好google一下才好。其他的偶就不聒噪了,基本的ActivePerl以及jsdk-1.4.x的sdk安装,这些东西对于各位做symbian开发的朋友来说都太熟悉了。记得装完后,要建立个基本的小程序验证一下,看看sdk能不能工作,模拟器的语言也最好切换成简体中文。

(2)通过svn下载S60WebKit的源代码
这一步非常重要,必需要下载正确的版本才可以工作(偶开始就吃了这个亏,郁闷了一把)。需要各位先在机器上安装一个TortoiseSVN客户端(这里感谢一下Tortoise团队,把svn和cvs这些工具的界面做得如此简单),好了,装好以后有的系统需要重启,重启好了接着继续。

计算机上建立一个随意的目录例如:
d:\kkkk

然后通过命令行进入这个目录,运行如下命令,从版本服务器上面下载代码:
svn checkout svn://anonsvn.opensource.apple.com/svn/webkit/S60/trunk S60 -r 21772

注意这里我们要求下载的是21772这个版本,据偶google的结果,目前只有这个版本编译成功的人比较多。如果不是这个版本的话,会出现诸如:找不到e32hashtab.h和browserlauncher.h之类文件的提示,可能还有别的问题了,或许需要打补丁才好,但是偶在这里懒得追究了。在这里,只要下载这个版本的就好了,只要能够顺利编译,剩下的事情。。。呵呵就简单多了。

(3)拷贝目录
将下载到的S60目录直接拷贝到:
c:\Symbian\9.1\S60_3rd\
看上去应该是这个样子的:
c:\Symbian\9.1\S60_3rd\S60

ok,好了,能够做到这一步,代表第一步的编译前的准备工作已经做好了。。。
接着就可以喝杯咖啡放松一下,准备下一步的操作了。。。


(未完待续)
阅读(5021) | 评论(4) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2011-04-18 09:44:39

这个只有V3的么?有没有V5的? 我的邮箱ningclean@gmail.com 谢谢

chinaunix网友2010-08-31 17:46:12

看了你文章,不错。 现在svn的服务器停了,你那还有S60 webkit 21772的版本吗? 如果有话,发给我一份,谢谢. 我邮箱:zhuweisong08@qq.com

chinaunix网友2010-05-26 14:32:16

Firefox:Gecko

chinaunix网友2009-03-18 13:41:30

firefox用的不是webkit引擎吧 不过是篇好文