Eisen's Blog

© 2023. All rights reserved.

我写的一个 chrome 的 extension: Domain Time Tracker

August 09, 2011

chromeextensiontime manage

Domain Time Tracker 是一个用于记录用户浏览页面时间的插件。其实差不多就是对 FF 下的MeeTimer的山寨。

一直对自己的工作学习效率不是很满意,可是又没有找到什么很有效的办法去有效果改善这种情况(当然,我知道其实对待这种事情没有什么捷径,我的意思其实是找到一个比较适合我的办法...)。在翻网页的时候不经意间发现了一个有关时间管理的博客,褪墨。其中有一些利用软件去更好的管理自己的时间和生活的方法。我感觉对于比较宅,天天对着电脑的我,这些工具显然比较有吸引力。博主介绍的一些软件中就有 FF 下的MeeTimer。不过据我所知,MeeTimer在 FF3.0 之后的版本就不能使用了 (点击MeeTimer,页面上的支持版本就是这个啦~,这就是"据我所知"的出处)。而且我那那段时事件又感觉 chrome 所提供的开发 extension 的机制非常的棒~并且在当时的 chrome app store 里面也没有找到功能可以像MeeTimer那样强大的页面浏览时间追踪插件。于是就萌生了在 chrome 写一个满足自己需求的页面浏览时间追踪插件的想法。

这个扩展功能比较简单,但是我自己用起来还不错。同时,由于 google 要开发者交那 5 美元入会费才能把应用放到 app store。但在交钱之前选择所在地区时发现没有中国大陆同时我也木有信用卡,于是觉得暂时还是先放在自己网站这里吧。以后有了信用卡再去折腾把。

上面是说了我写这个扩展的动机。下面还是立即介绍下这个插件的功能吧,这才是重点。

虽然自己写这个东西写了相当久,但是其功能还是很简单的。主要就是根据域名统计用户在这个页面上停留的多长的时间。这里要强调一下所谓的"停留时间"是**用户把一个页面作为最前端页面,并且 chrome 在所有窗口出去最前面时的状态。并且,当插件发现用户在一个页面上停留时间超过 1 分钟并且对当前页面没有鼠标移动、按键点击等这些动作时,它会认为用户已经不再操纵计算机并停止计时。**也就是说,只有你真真正正的在看这个页面,在这个页面上时不时滑动鼠标,点击按键的时候这个扩展才会把所消耗的时间记录下来。

插件有分组的功能。在软件运行之初,所有的域名被放在一个"ungrouped"的分组之中。用户可以点击主界面上面的"Group Options"去建立一个新的分组。返回主界面后,当鼠标移动到列表里的域名上时会显示一个对域名做分组的编辑窗口哦~一个域名是可以放在多个分组之中的。

我一直觉得一个好的软件是不应该需要人去教才会用的。我也是本着这个理念去做这个小插件的。不求其功能一开始就非常完备,但求其看起来清清爽爽,干干净净,舒舒服服,让人装上它就是到它是干啥的。上面的讲解也主要是希望大家知道我所记录的时间到底是哪些时间~

当然,这个扩展还有很多可扩展的空间,还有很多功能需要改正。

**同步功能:**我目前觉得比较恶心的就是所有的数据只是在本地保存,而我经常在 Ubuntu 和 win7 换来换去导致有两个不同的统计结果。好想把它做的像是 chrome 的同步功能那样,让我可以在两个 chrome 下看到的是一直的统计结果。而且同步的另一个巨大的好处是我可以让我的数据可以保存的非常久远,不会因为我 ubuntu 毫无缘由的崩溃而烟消云散。

**查看更悠久数据:**说到长期统计下去就不得不说目前所能看到的统计时间窗口是非常有限的。最多看看上周的数据,或者看你全局的数据。但事实上,扩展中是统计了每天的数据的,需要我去写更多代码提供几个按钮罢了...

**数据可视化:**如果能把每天看英语那个分组生成个曲线图或者把上个月的数据和这个月的数据用一个柱状图显示,便于看到上个月和这个月的数据对比该多好...是啊,我也想啊,这东东到目前为止就是我在用啦。只是要想办法画图罢了....canvas 很强大,应该可以吧-_-

最后再说一句,感觉这样从小东西着手,循序渐进开发的方式很不错。一开始就要做个很大的东西一方面会遇到很多障碍导致进度过慢,并逐渐丧失信心。另一方面,由于项目较大又耐心不足会导致东西粗制滥造,让自己失望。从一个小东西开始,可以让自己更专注而且有精力尽量做的规整一些,仔细一些。

最后感慨一下~Google 是不是彻底放弃中国了呢,连开发者们都抛弃了。其实我对 Google 没意见,不要酱紫啊 T_T