在 Java 程序中内嵌 Mozilla 浏览器
2009-11-05 00:00:00 来源:WEB开发网 闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾惧綊鏌熼梻瀵割槮缁炬儳缍婇弻鐔兼⒒鐎靛壊妲紒鐐劤缂嶅﹪寮婚悢鍏尖拻閻庨潧澹婂Σ顔剧磼閹冣挃闁硅櫕鎹囬垾鏃堝礃椤忎礁浜鹃柨婵嗙凹缁ㄧ粯銇勯幒瀣仾闁靛洤瀚伴獮鍥敍濮f寧鎹囬弻鐔哥瑹閸喖顬堝銈庡亝缁挸鐣烽崡鐐嶆棃鍩€椤掑嫮宓佸┑鐘插绾句粙鏌涚仦鎹愬闁逞屽墰閹虫捇锝炲┑瀣╅柍杞拌兌閻ゅ懐绱撴担鍓插剱妞ゆ垶鐟╁畷銉р偓锝庡枟閻撴洘銇勯幇闈涗簼缂佽埖姘ㄧ槐鎾诲礃閳哄倻顦板┑顔硷工椤嘲鐣烽幒鎴旀瀻闁规惌鍘借ⅵ濠电姷鏁告慨顓㈠磻閹剧粯鈷戞い鎺嗗亾缂佸鏁婚獮鍡涙倷閸濆嫮顔愬┑鐑囩秵閸撴瑦淇婇懖鈺冪<闁归偊鍙庡▓婊堟煛鐏炵硶鍋撻幇浣告倯闁硅偐琛ラ埀顒冨皺閺佹牕鈹戦悙鏉戠仸闁圭ǹ鎽滅划鏃堟偨缁嬭锕傛煕閺囥劌鐏犻柛鎰ㄥ亾婵$偑鍊栭崝锕€顭块埀顒佺箾瀹€濠侀偗婵﹨娅g槐鎺懳熺拠鑼舵暱闂備胶枪濞寸兘寮拠宸殨濠电姵纰嶉弲鎻掝熆鐠虹尨宸ョ€规挸妫濆铏圭磼濡搫顫嶇紓浣风劍閹稿啿鐣烽幋锕€绠婚悹鍥у级瀹撳秴顪冮妶鍡樺鞍缂佸鍨剁粋宥夋倷椤掍礁寮垮┑鈽嗗灣閸樠勭妤e啯鍊垫慨妯煎亾鐎氾拷

为了解决这种行为不一致的问题并对外提供统一接口,SWT 在 3.3M5 版本中提出了 "Mozilla Everywhere" 的概念,在 Windows 上和 Mac 上也提供了基于 Mozilla 内核的浏览器部件。并在 SWT 3.3M6 中增加了对 JavaXPCOM 的支持,这就使得开发者可以通过 Java 语言访问所有 Mozilla 的公开接口,从而为内嵌浏览器提供更灵活的定制行为。
图 1. 基于 Mozilla 的 SWT 浏览器部件上的用户偏好设置页面
基于 Mozilla 的 SWT 浏览器部件
为了使用基于 Mozilla 的 SWT 浏览器部件,需要在操作系统中预先安装与注册 XULRunner 。那,什么是 XULRunner 呢?“ XULRunner 是一个单独的“ Mozilla 运行时”安装包,可用于启动多种如同 Firefox 和 Thunderbird 一样丰富的 XUL+XPCOM 应用程序。它提供了安装、升级和卸载这些应用程序的机制。 XULRunner 还将提供 libxul,这个解决方案允许把 Mozilla 技术嵌入到其它项目和产品中。”(此段定义译自https://developer.Mozilla.org/En/XULRunner)简单来说,XULRunner 是基于 Mozilla 的浏览器(如 Firefox,Camino 等)的核心。
XULRunner 的安装与注册:
下载合适版本的 XULRunner 。下载地址:http://releases.Mozilla.org/pub/Mozilla.org/XULRunner/releases。注意:如果在 Mac 下进行开发或者需要使用 JavaXPCOM,则需要下载 1.8.1.2 或更新版本。
Windows: 将下载的 zip 包解压到合适的文件夹,将当前目录设置为解压后的文件夹。
Linux: 将下载的 zip 包解压到合适的文件夹,将当前目录设置为解压后的文件夹。
更多精彩
赞助商链接