和一块儿读研究生的同窗Meng一块儿上周开发了这个Chrome Extension:别颓啦 - bietui.la。web
一开始Meng说了这个idea,我有一个想法就是这个是绝对不可能防止人颓的。。。所以,我抱着好玩+学习Chrome API的愿望开始了,谁知道在开发过程当中狂背了200多个单词,而后以为也许这个还挺靠谱。做为一个在课余+工做之余+玩乐之余完成的轻应用,我在这里简述一下从整个过程当中学到的一些细节。chrome
别颓啦 - Chrome Extension:
* 扩展地址: http://t.cn/RPXKit0
* 网站地址: http://www.bietui.la/
* 墙内crx下载地址: http://www.bietui.la/downloads/浏览器
想法很简单,website blocker,添加本身爱颓的网站,而后访问该网站会被redirect到这个页面并要求答对5到单词题方可进入网站。安全
产品并不复杂,可是要两我的一块儿来完成,就必定要合做。与一个成熟完整的团队不一样,这样的一个临时的互相技术不了解的人的合做比想象中要复杂。咱们在一开始的合做中也慢慢摸索出了一些有借鉴意义的地方:app
尼玛被墙啦!!!这个简直丧心病狂,记得上次在国内的时候,这个仍是能够用的,如今就是一个不断转啊转啊的loading logo了好么。
吐槽完毕,如何解决?咱们的方法是让用户能够下载.crx
文件,结果又是坑啊!!!应为安全缘由,被直接下载的.crx
文件会弹出错误框,且直接打开这个文件浏览器会报错。惟一的方法是,将这个文件拖入chrome://extensions/
页面,才能够安装(详情请参考:教程)。ide
为了更好地、简单的更新网站内容,咱们会把被block的网站redirect到另一个域名上,而这个时候和extension的JS沟通成了一个很蛋疼的问题。因为这个script是insert到页面里的,读取有时间延迟。学习
嗯哪,为了让你们最大程度地享受Chrome Extension的好用,咱们在storage上尽量存号东西,可是每次修改了extension后,直接reload也可能不对,须要删除本地应用后从新安装才能够更好地debug。网站
写的比较着急,要去吃好吃的,因此有不完善的地方以后会更新ui