WebQQ 桌面化(更新最终效果图)
WebQQ 做为腾讯今年全新推出的产品,由于它跨平台的特性,从内测起就得到在下的关注。本文将阐述如何用两个小软件将 WebQQ 更好的与 Linux 桌面整合起来。
所谓桌面化,个人理解就是将网络应用与现有桌面本地应用结合到一起,脱离浏览器运行。本文分两步,第一步首先是将其拨离浏览器,创建桌面快捷方式;第二步是增加最小化系统托盘及新消息提示功能。
创建桌面图标
目前将网络应用扩展到桌面是一个趋势,存在着很多解决方案,本文以 Mozilla Prism 为例,类似的方法同样适用于 Google Chrome 。
1. 到 Mozilla Prism 的网站上下载 Prism,点击 Download Now 之后会提示有两种,一种是以 Mozilla Firefox 扩展的方式,适合已经安装有 Firefox 的朋友;一种是以独立程序的方式,适合尚未安装或不需要 Firefox 浏览器的朋友。
这里选择第一种。下载后重新启动 Firefox 以完成安装。
2. 打开 WebQQ 的页面,点击 Firefox 菜单栏上的“工具”-“Convert Website to Application...”,弹出一个对话框,如下图:
只需要在 Name 一栏填写想要的程序名,比如 "WebQQ";在 Create Shortcuts 下面记得勾选 Desktop,确认创建桌面快捷方式,点击 OK 即可。
此时桌面上应该已经出现了名为 Webb.desktop 的文件,双及它会提示是否要运行该来源不明软件,点击 Mark as Trusted。之后图标会变成 WebQQ 的样子,此时再次双击,就会以一个独立进程打开 WebQQ 页面,登陆即可。如下图:
注意:这一步出现问题的童鞋(比如总是打开固定的某个页面而不是 WebQQ 页面),请手动编辑 .desktop 文件,将其中的 firefox 替换成 xulrunner。详情参考文末解释。
创建系统托盘提示
大多数即时通讯软件都具有最小化到系统托盘的功能,并且新消息到来的时候会有弹出提示。接下来要将通过 AllTray 这款小软件将 WebQQ 也赋予这个实用功能。
1. 首先当然要安装 alltray,它已经被包含到绝大多数发行版的软件仓库里。 Fedora 里在终端运行如下命令即可:
su -c 'yum install alltray'
2. 安装完成后,可以在“应用程序”-“附件” 里找到它,点击后会产生一个小窗口,提示“点击需要最小化到系统托盘的窗口”,照它所说的做,点击下 WebQQ 的窗口,立刻就最小化到系统托盘了~
怎么样?很方便吧?但是每次启动后还要启动 Alltray 点一下,有些麻烦。而且别忘记我们还需要有新消息提示。
3. 这里就需要 alltray 的第二种运行方式了: alltray [程序名] [选项]
通过 man 手册得知组合以下几种选项可以达到托盘区新消息提示的效果:
-s 在首次启动时不隐藏主窗口。正是我们想要的,总需要输入QQ号和密码吧……
-i 使用一个 PNG 文件做为托盘区图标,后接 PNG 文件路径。看来这里需要知道 WebQQ 的图标位置,用任意文本编辑器打开桌面上先前创建的 .desktop 文件,查看 Icon= 一行即可得知。
-l 使用较大图标,当图标尺寸大于 24*24 时使用。
-st 允许在所有可见工作区显示。也是我们想要的。
-t 当窗口标题变化时显示提示,后接提示显示时间,单位秒。通过这个选项可以实现来新消息时的弹出提示,因为 WebQQ 会在有新消息时改变窗口标题。
4. 了解完 Alltray 的第二种模式,开始动手修改 WebQQ.desktop 文件。用任意文本编辑器打开桌面上的 WebQQ.desktop 文件,在 Exec= 这行的已有内容的前面添加 "/usr/bin/alltray" ,用空格和已有内容隔开;再在已有内容的最后添加上面讨论的那些选项。比如我的 Exec= 行经过修改后变为:
Exec="/usr/bin/alltray" "/home/lvp/Apps/firefox/firefox" -app "/home/lvp/.mozilla/firefox/hnvzquts.default/extensions/refractor@developer.mozilla.org/prism/application.ini" -override "/home/lvp/.webapps/webqq@prism.app/override.ini" -webapp webqq@prism.app -i "/home/lvp/.webapps/webqq@prism.app/icons/default/webapp.png" -t 5 -s -st
其中斜体部分是我添加的内容。 -i 后是用做托盘区图标的 PNG 文件地址,用下面 Icon= 一行的地址即可;-t 5 代表当标题变动时显示5 秒钟的提示;-s 代表首次运行时不隐藏窗口,这样我可以输入号码和密码;-st 代表在所有工作区可见。保存并退出。
最终效果图1:
最终效果图2:
完成
此番设置之后,双击桌面上的 WebQQ 即可直接连接至 WebQQ 页面。点击窗口关闭按钮会最小化到系统托盘区。当有新消息时会有弹出提示,持续5秒钟。需要退出 WebQQ 时,右键点击系统托盘区图标选择 Exit 即可。所有的操作同本地安装的即时通讯软件一样,完全整合到现有桌面环境中了~
PS: 有朋友说用 Prism 看不了 Flash,这个肯定是可以的,下图为证。
出现问题可能是跟 Flash 插件的安装位置位置有关,一般将其放置到 /usr/lib/mozilla/plugins 这个位置大多数软件都可以识别。
PS2: 有些朋友使用发行版提供(比如 Ubuntu 或者 Fedora 预装的)的 Firefox 时会遇到无法正常启动 Prism 创建网页窗口的情况,表现为总是打开一个固定的主页。此时需要修改创建的 .desktop 文件,将其中的 firefox 替换成 xulrunner ,如下:
Exec="/usr/bin/alltray" "/usr/bin/xulrunner" -app "/home/lvp/.mozilla/firefox/hnvzquts.default/extensions/refractor@developer.mozilla.org/prism/application.ini" -override "/home/lvp/.webapps/webqq@prism.app/override.ini" -webapp webqq@prism.app -i "/home/lvp/.webapps/webqq@prism.app/icons/default/webapp.png" -t 5 -s -st
Read More:





我用Prism创建了很多快捷方式
debian sid 的 iceweasel 貌似搞不定prism....
话说firefox直接像chrome那样搞个apps模式不完了么?这个prism实现的还不只是个命令行...不像chrome那样简洁的一大堆的要靠插件或软件来创立的命令....damn...
@adam8157:
咳……上面创建桌面快捷方式的时候哪一步用命令行了……
创建系统托盘区的时候也不需要,只是为了增加新消息提示时才需要用文本编辑器的……
不用这样诋毁 firefox 吧……
ubuntu下很容易解决了
@Yeqin_Su:
可不可以告知 ubuntu 下哪个独占工具让这个问题容易解决了?
谁能告诉我这篇文章怎么了?
全文唯一一处使用命令行且唯一与 Fedora 有关的地方是用 yum 安装 alltray! 最后那些红色的不是命令行,是我为了方便不熟悉的朋友对将我修改后的文本.desktop文件贴出来做例子。
然后2楼的说“ Mozilla 的 Prism 只能实现个命令行”,4楼的说“ubuntu 下很容易解决了”。 都是哪里跟哪里啊!
我写这篇文章用 Firefox 和 Fedora 举例仅仅是因为我在用! 尽管我不用 Google Chrome,但我还是试验了能不能用这个方法,确认可以后也在文章中提到了“类似的方法同样适用于 Google Chrome”。 Firefox 是在 JavaScript 和启动速度上比不上 Google Chrome,但值得这样诋毁的么?从来没见 Firefox 的粉丝去攻击 Google Chrome 不支持 RSS 订阅和广告过滤。
Ubuntu 是不错,很多东西图形化了很方便。但是我实在想不出同样是用 GNOME 的情况下编辑个desktop文本文件 Ubuntu 能比 Fedora 容易多少?
实际上最后一步完全可以使用右击选择属性的方式,在那里添加alltray命令和选项。但是那里输入空间狭窄,也没有用文本编辑器的方法直观,所以最终选择介绍文本编辑器的方式。
话说这里既不是某个FirefoxTOY 或者 ChromeTOY,亦不是 UbuntuTOY 或者 FedoraTOY,没有必要在这里对其他浏览器或者发行版进行盲目攻击。
如今的人都很含蓄……说话神龙见首不见尾 @yesu: 黑白兄是Linuxtoy的Fedora党主席
Fedora12明日正式发布
学习了
@Pepino:
言重了……
虽然个人很喜欢 Fedora,但从未攻击过其他发行版及其用户,很厌恶那些“唯发行版论”的人……
黑日白月,我只想说一句:支持你!!
说实话,这个过程我用了不到5分钟就完成了,但是写这个文章用了一个小时多,只是为了和大家分享下 Linux 使用的的一些小技巧,方便有同样需求的人。本来还有一步步的截图,不知怎的上传不上去,只好缩减成文字。
看到有的人没有看文章就妄自菲薄的猜测,并用来诋毁其他开源软件,实在难受…… 希望那些动不动就对开源软件出脏字的人想想自己为开源做了什么贡献……
写的挺好的,谢谢阿
黑白兄不必如此动怒,喜欢FF的自然会喜欢,不是几个宵小没有技术含量的攻击能动摇的。
ps:现在一些人真是变得很极端、狭隘、自以为是、不厚道,我怀疑他们是xx就会死星人。
果然大家都是用webqq么,官方的QQ For Linux太烂,几个第三方的又总被封杀,用来用去就webqq最省事啊。
@adam8157,Chrome没有插件,开个“驱动之家”卡得要死,这就是你所谓的简洁?
写的很好,学习了,谢谢
不管是那个发行版的fans,都应该为linux做出贡献,不管以什么形式,我们不应该相互诋毁,应共同建设linux的世界,享受linux带来的快乐
昨天才发现有webqq,(好久没过来)今天一来又碰到到这篇文章,感谢。
QQ For Linux真是不咋地,都快一年了,也没更新,功能还不如这个webqq多。
文章不错,配个效果图之类的就更有吸引力了
黑日白月兄不用生气,群众的眼睛是雪亮的,你的劳动我们看的很清楚。说得好不如做的好。
原来还可以这样,长见识了 以后 web 应用,我就这么搞了,哈哈
换回QQ for Linux了,那个WebQQ不好用。。。
用了一段时间的webqq了,还不错.不过不习惯让浏览器单独运行这个程序,这样反而要多开几个浏览器窗口.不如在 tab里面用 :D
@黑日白月 都是站着说话不腰疼的人 何必生气呢 你气他们又不气 你多吃亏阿……
lz做事的态度值得肯定,支持你
今晚fedora 12就发布了,窃喜
这个写得好,正是我所需要的.非常感谢
有人试过在kde上用Plasma添加WEB浏览器的方式用webqq吗?
请问大家用webQQ的时候有没有遇到丢失信息的情况(下次登陆会作为离线信息补发给你),尤其很多信息的时候~~郁闷。
@黑日白月: 黑兄不用生气,非常感谢您的分享,可把图片发到我邮箱,我代为上传。
学习了,黑兄要多做些linux桌面的应用才好,能够突出linuxtoy的特色,这方便的资料网上比较缺乏
@Ryan_fu: 现在不知道,以前我试过,是没法登录的,用户名/密码都正确也会提示xxx错误。
QQ的udp通讯方式丢一点包很正常的。
@黑日白月: good job!
每个人都有自己用习惯的东西,每个软件都有自己的优势和不足,这也正是开发者们不断改进的动力和方向。我自己用的小狐狸,原因很简单,就是习惯问题。所以我没资格也没必要对其他软件品头论足。 不过还是建议大家认真看完文章、搞清楚后再下评论,毕竟这牵扯到很多人的心血和努力,会伤感情哦~ 对于初学者来说,还是很感谢黑兄的细致描述和指导!
赞一个。。。。
比以前的讲得详细多了
@zbwu86,有,偶尔会遇到。
PS,很赞黑白日月的这篇文章,收藏了。prism是个好东西,用很长时间了。对于上面的争论,太没营养,直接略过,黑白兄也没必要生气。
黑日白月非黑白日月,:D
按照教程,UBUNTU9.10搞定了,桌面图标不好看,网上下了一个搞定,但是系统托盘图标还是换不掉,再想想办法!
晕, Firefox和Chromium都试过了, 没有成功.
晕, Firefox和Chromium都试过了, 系统托盘无法弹出提示.
截图一副,以饱眼福:
支持!
继续使用pidgin
支持!
但继续使用pidgin
来看那看那如何使用啊!
谢谢,这种分享精神很重要!
@黑日白月:
黑兄……你要考虑到如果用win的有很多不懂电脑的盲从者,那么用linux的就有很多自视清高的装精者,还有很多google的伪fans不能客观的看问题。google有的做的好有的确实做的不怎么样,但是总是有人觉得google什么都是最好。google的chrome宣传攻势让舆论一时间全都倒向了chrome,俨然一副除了chrome其他浏览器都是渣,给大众一种“IE最慢,ff只有插件数量撑着,opera就是个小众”这种印象。这种情况下很多容易被迷惑的人就会嚼舌根子。不必理会他们。
我以前也是用ubuntu的,现在是arch,但从来不会诋毁任何发行版。自由软件也是如此。有一些linux用户我发现根本就不理解开源,纯粹只是装一个身边人不懂的系统装精外加冠冕堂皇的使用开源软件的免费而已。
从客观上讲,各种思想、理论、商业或非商业目的的宣传,总会给人造成片面的看法,从主观讲,总有不懂装懂的小白和自以为是的高手,固执的不愿意从整体来全面看问题。这个事情要继续讨论下去,就得到形而上层面了,呵呵。建议大家去看看这篇文章吧:http://www.yeeyan.com/articles/view/81055/67359
@sphinux:
好文……
chromium笑而不语
这篇文章是黑日白月写的!至于39楼的“黑月日白”、还有38楼提到的“黑白日月”快要把人搞晕了,呵呵~
开源的不仅仅是软件,跟应该是人们的心;开源不仅仅是软件,更是一种精神!
虽然我很早就会prism,但是感觉這個還是不好,最起码,我用prism的時候,flash不支持 你会解决吗? ff不错哦,自从我用ff,鼠标就用右键了,基本是鼠标手势,鼠标拖曳,autopager够了 冬天了,真的懒了很多 支持一下
楼上的老大们.....我的意思是说prism的作用只是替代了一句命令....
为什么要用prism生成这句命令呢?是因为firefox的apps模式太麻烦...没有chrome简洁....
我使用iceweasel的....何来鄙视firefox的说法...
我的哪句话没什么病句吧...大家就都没看明白?
想法很妙 但是我prism上不了webqq, ff就可以,不知道为啥 暂时先用chrome得了
鄙视tx的qq4linux
用CHROMIUM一秒钟不就搞定了,何必这么麻烦……
@adam8157:
这个是 Chrome 的 Apps 模式创建的:
!/usr/bin/env xdg-open
[Desktop Entry]
Version=1.0
Encoding=UTF-8
Name=我的QQ – 能在网页上直接聊QQ
Exec=/opt/google/chrome/google-chrome --app="http://web.qq.com/"
Terminal=false
Icon=chrome-http__web.qq.com
Type=Application
Categories=Application;Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml_xml;
同样也就是个 .desktop 文件而已,你眼中的 Chrome 的 Apps 模式是什么“神奇”的东西?
@yogoloth:
不知道你怎么一秒钟内使用 Chromium 创建系统托盘提示?
@Toy:
刚才又试了下,现在图片可以上传了~ 谢谢 Toy 兄~
@wewe: @yang: 已经添加,之前不知怎的上传老失败……
@hmy:
呵呵,我经常折腾各种插件,常常需要重新启动 Firefox。用 Prism 独立运行 WebQQ 就不会受到影响~
@躺在桌子上:
如果系统托盘图标只能是 png 格式的,若尺寸大于 24*24 的话,需要增加一个 -l 选项。
@Skyrunner:
仔细看看是不是缺少一个空格或者参数写错了,肯定是可以显示的。
@sphinux:
不错的文章~
额地神啊……
个人觉得这篇文章的后半部分用 Alltray 创建系统托盘提示才是精华,为啥都只看见前面用 Prism 创建网页快捷方式……
其实用什么浏览器什么方式创建网络应用程序都无所谓的。我自己用 Chrome 也试过,后来转用 Prism 是因为 Chrome 在我系统上中文字体是虚的,修改成跟 Firefox 一样也不行,不知道怎么回事,所以又换回 Firefox 了……
本来是发现了 alltray 这个小程序准备推荐,后来发现 TOY 兄很早就推荐过了,都不准备写了。后来看看好像当时没提到 Alltray 的第二种运行模式,想来想去也就 WebQQ 好像需要这个功能,于是才有此文。
鄙视各种版本论、浏览器论者
按照上面的做,但是无法实现:来新消息时的弹出提示
Ubuntu 9.10
求救, Ubuntu 9.10下,来消息时无弹出提示,哪位知道什么原因吗?
為什麼“-s -i -l -st -t”這幾個參數在gentoo中的alltray通通沒有呢?版本AllTray 0.7.4dev
学习了
重新安装了0.69版本后可以了!
最新版的貌似不可以,参数都不对了, man下看看就知道了
@小权:
哦?原来是这样?参数变动这么多?
我用的是 0.7.0 版本。
@黑日白月: firefox的 "/home/lvp/Apps/firefox/firefox" -app "/home/lvp/.mozilla/firefox/hnvzquts.default/extensions/refractor@developer.mozilla.org/prism/application.ini" -override "/home/lvp/.webapps/webqq@prism.app/override.ini" -webapp webqq@prism.app
chrome的 /opt/google/chrome/google-chrome --app="http://web.qq.com/"
明显chrome的要简洁,可以不依靠插件和软件手动生成。。。。这对我很重要,绑定快捷键或者放菜单里,不用装prism,也不用生成我没有的Desktop目录,也不用生成我的系统识别不了的.desktop文件...
我不用chrome,用iceweasel,下面那些干嘛说我是版本论、浏览器论者,难道就不能批评下firefox么?
好文章,这样用webqq确实方便了不少。 谢谢楼主分享:]
说实话这篇文章的关键和精华是alltray,其它用何种浏览器倒不是主要的。可惜我的firefox怎么也弄不成功,只好用chrome的一键生成应用程序了。
@hchufeng:
没有关系啊,用 chrome 生成后依然也可以用 alltray 变成系统托盘图标,实现图中的功能。
@黑日白月: 黑白兄过激了,
那人说的是,App 模式理应浏览器自己的功能,理应像 Chrome 一样自己换个窗口模式就可以。
而单独的 prism,明明跟 firefox 一样的 xulrunner 程序,却要额外弄一个不共享的独立浏览器(prism 不就像多装一个改了界面的 FireFox)
@黑日白月: 由衷的赞赏楼主的这种分享精神。跟小权朋友一样,我在Ubuntu 9.10上起初也无法在标题栏标题发生改变时收到提示,使用AllTray 0.69后问题得到解决,我使用的是Chrome生成的.desktop文件。另外我这里 man alltray 没发现选项有变化。
@黑日白月: 是的,我就是用chrome这样做的,所以说上面很多的人,可能没有看清文章的核心alltray,所以造成了争论
@雪梨:
Prism 的 Firefox 插件就是用的 Firefox 的 xulrunner,没有自己额外装啊~
只有独立下载的 Prism 才包含独立的 xulrunner。
@Alwaysup:
哦?可不可以分享下在 alltray 0.7 下的配置有何不同?
Ubuntu 9.10 AllTray 0.69 还是无法弹出消息.
我在openSuse下按照步骤操作了,不过奇怪的是,运行在桌面的图标只会打开一个全新的firefox窗口,并且默认打开了内置的首页,QQ的影子都没见到。。。
@hongewuyan: 我用firefoxr的时候也是这样的情况。
出问题的朋友麻烦将自己的 desktop 文件的 Exec 行和文章中的对照下,看看有何不同?
!/usr/bin/env xdg-open
[Desktop Entry] Name=WebQQ Type=Application Comment=Web Application Exec="/usr/bin/alltray" "/usr/lib/firefox/firefox" -app "/home/asion/.mozilla/firefox/zz81iw53.default/extensions/refractor@developer.mozilla.org/prism/application.ini" -override "/home/asion/.webapps/webqq@prism.app/override.ini" -webapp webqq@prism.app -i "/home/asion/.webapps/webqq@prism.app/icons/default/webapp.png" -t 5 -s -st Icon=/home/asion/.webapps/webqq@prism.app/icons/default/webapp.png
以上是我的这个desktop文件的内容。 系统为openSuSe11.2,FF为自带的3.5.4版
貌似 alltray 无法再 awesome 下面使用.
@黑日白月: 黑白兄,为什么我的alltray没有提示出现,我用得是chrome生成的桌面程序。
@hongewuyan:
似乎有的系统自带的 FF 有个默认启动首页,貌似会影响……
我用的从 Mozilla 下载的 Firefox 3.6 Beta。
@hchufeng:
是不是 alltray 的版本问题导致选项变化了?用 man alltray 看看新的选项参数都是什么。我这里用chrome 生成的 desktop 亦可以显示提示的。
qq回的人真多
看见alltray,差点想飘走,还好看了下面一行,原来alltray还有第二种运行方式,赶紧折腾去~~~
prism和chrome的app模式各有千秋,prism的优势在于可以脱离浏览器,而chrome,一点url就会开启浏览器;劣势在于矢量字体不够锐利。而chrome的优势在于,第一字体的比prism锐利,但是字体大小不好控制,而且字体机制也有待改善,有些页面的字体不能自定义。第二就是js的速度很快。 所以,需要文字处理的我用prism,例如google Reader,Gmail,Docs ... 其他用chrome,例如rtm,qqmail,webqq
@Lancelot: prism也没脱离浏览器,是界面极简版的firefox
@黑传说:
其实准确的说法是 prism 是基于使用 gecko web 渲染引擎的 xulrunner,是脱离了 firefox 的。
firefox 和 prism 一样是运行于 xulrunner 之上的,是平级关系。
请问怎么设置快捷键呢?
非常不错的一篇文章 辛苦啦 本人准备去实践一番 赞一个!
装了一直不能用, 总是打开首页, 后来把noScript卸载掉就好了. arch x86_64
为何我创建的图标打开之后是一个新的火狐浏览器呢,然后是ubuntu的起始页不是webqq
@又疯又神经:
有的发行版自带的火狐会强制指定首次打开的页面……建议使用从 Mozilla 下载的版本。
我也是这个双击WebQQ后显示的是mozilla google默认主页的问题。
@hongewuyan:
@又疯又神经:
@yus253:
已经添加解决方法,请参考原文末尾。
另外从侧面证明了 prism 是独立于 firefox 直接调用 xulrunner 的……
后边的参数怎么没用 ???? 我的文件:
!/usr/bin/env xdg-open
[Desktop Entry] Name=webqq Type=Application Comment=Web Application Exec="/usr/bin/alltray" "/usr/bin/xulrunner" -app "/home/hlcfan/.mozilla/firefox/gt6hgkwm.default/extensions/refractor@developer.mozilla.org/prism/application.ini" -override "/home/hlcfan/.webapps/webqq@prism.app/override.ini" -webapp webqq@prism.app Icon=/home/hlcfan/.webapps/webqq@prism.app/icons/default/webapp.png -t 5 -s -st 参数-t 5 -s -st好像没有起作用 为什么??
楼主的文章很好,多谢~ @hlcfan 你的配置写错地方了 -t 5 -s -st 参数应该放在[icon]条目的前面
不错,写的很具体,我菜鸟也能学会阿,谢谢
我的alltray不知道为什么没有-t -s -st选项,archlinux上pacman装的。
alltray -v AllTray 0.7.4dev Copyright (c) 2009 Michael B. Trausch Licensed under the GNU GPL v3.0 as published by the Free Software Foundation.
原来是0.70以上的版本貌似是重新写过的,用aurget装了一个0.70的就好了