Категории: Все

по jesse cheng 12 лет назад

851

Smart Word Todo

在开发新的浏览器扩展时,遇到了一些关于书签同步和API使用的问题。为了避免在高频率操作书签时超出配额限制,建议对书签同步进行优化,尤其是在用户未登录或正在使用过程中。生词本与书签的同步需要考虑到并发更新的问题,避免造成数据混乱。通过对书签和生词本的变化情况进行检查和同步,可以确保数据的一致性和完整性。此外,增加对Safari浏览器的支持,以及在插件关闭和不同环境下的使用情况,也是需要解决的重要问题。

Smart Word Todo

Smart Word Todo

+1

增加safari支持

后台翻译的思考

现有的挑战
更快
更好

生词本功能优化

coolirish,safari history
图片功能
102.读中文语音
101.同步机制单词数量的问题
4.20 things
3.音标
2.shift快捷键
1.plus one 异步调用
11.读音还是从google取,qq是垃圾
10.鼠标拖到最后翻页jgesture
9.http://www.guoxue.com/?category_name=people类似
8.http://www.trueknowledge.com/冒泡
7.Isotope
6....
4.html5便签
4.detail的优化
3.声音,次数,日期
2.多少页bug
1.head好看
3.生词云
2.datatable实现
1.现界面保留

拖曳功能

语音功能

语音输入单词

omnibox:-word 移除单词

html to txt

在高亮前判断页面中是否有这个生词,没有则不做后面乱七八糟的东西

大文件的处理优化?

http://www.scons.org/doc/production/HTML/scons-man.html

pdf2html

web online
有实现方案
native client
需观望

在页面加载时显示单词

1.加载过程中的更好地显示

0.notify

同步bookmark触发时机

新同步的问题,这些问题解决之前不发布新版本
2.删除后,本地内容也是空的了。如果没有标签无内容,那么不load到localstorage为好??
1.会创建好几个标签
4.有n次变动时?
3.5分钟(n)同步一次
最后5分钟内
2.插件关闭时
不关闭时怎么办
1.双击加词和减词时cachewordspush
如果频繁就会超出quota
"Error during bookmarks.create: This request exceeds available quota."
Aaron Boodman 查看个人资料 更多选项 2010年3月20日, 上午8时02分 The extension system has a built-in rate limiter on bookmark operations to avoid overloading Chrome's built-in bookmark sync system. It should only trigger under extreme usage of the bookmarks API. I believe the current limits are a max of 2 of the exact same operations per minute, sustained for over 10 minutes. So, if you update the exact same bookmark to the exact same value twice a minute for 10 minutes, you'll hit it. How is your extension using the bookmarks API?

如果点击选中的生词包含一个已经高亮的生词,其实他是想选择高亮的那个生词的,智能判断

假死问题解决

方向

chinese->english
5000人后

程序

说明

图标

untify JS
ok
firefox?

应根据页面大小只能决定前多少个频率最高的出现的生词高亮(还得考虑),因为范围问题

1.同步

3.同步到google docs
2.chrome同步机制
setting(将来)
bookmark(现有)

应用场景频率分析

目标

保证串行多个chrome单元正确,并行多个chrome单元不难用。这些变动不应对原来就没问题的1个chrome单元的情况造成影响

smartword操作单元

删除单词

添加单词

归纳

用串联,并联图可以描述上面过程:”打开,操作,关闭“的串并联。

并行使用多个chrome单元

测试用例:打开chrome1,打开chrome2,关闭chrome1,,关闭chrome2,......

串行使用多个chrome单元

需要同步

测试用例:打开chrome1,关闭chrome1,打开chrome2,关闭chrome2,......

并行使用1个chrome单元

测试用例:打开chrome1,再打开一个chrome1,关闭第一个chrome1,关闭第二chrome1,......

串行使用1个chrome单元

用不着同步

测试用例:打开chrome1,使用smartword, 关闭chrome1,打开chrome1,使用smartword,关闭chrome1,......

自己定义:chrome单元:以是否使用同一个userdata区分。不管是否运行在同一个计算机上,userdata不是同一个目录的chrome浏览器,称为不同的chrome单元。

多台计算机使用多个chrome单元

1台计算机使用多个chrome单元

1台计算机只使用1个chrome单元

修正

上面的过程和问题删繁就简后的结论就是

书签里有,生词本无的,将之加入生词本!。。。

这不是最对的,但却是最容易不出大问题的

问题

书签更新肯定是针对一个的,若并发的,只有1个书签,不可避免只取最后面一个,那前面的书签就给冲掉了,同时捕获到其更新,又会更改生词本,这样就混乱了。所以,该方案要使用的前提是和服务器的同步不能并发

测试流程

场景

4。。。。

3。我同时在一个电脑的两个chrome运行环境下使用

2。我同时在pc和mac上用

1。我在pc上用后,跑到mac上用,再在pc上用

同一个账号在两个不同的chrome运行环境下

1.最好的情况,同一个账号在两个电脑上

这个一定要严格测试确认无误后才能发布,不然就乱套了

同时要密切关注setting同步的问题,若发布则不必使用该方案

在chrome store发布测试版

以1个月时间的有针对性的使用

环境前提

在使用过程中,书签被更新

用户未登陆,书签不能同步

用户已经登陆,书签可以同步

过程

3.生词count变化时,同步更新书签

因变化较多,需要考虑有效率的同步

2.添加新word到生词本时,同步更新标签

1。启动时,检查书签变化情况,将变化体现在生词本

(word)生词本有,bookmark无的

生词本添加时间>书签时间

否,删除

是,不做变动

(word)生词本和bookmark都有的

记录日期是否一致做判断

2。不一致

count二者相加,日期取书签日期

chinese,sound取日期最新的

1。一致

不做操作

(word)生词本无,bookmark有的

加入生词本????

1.自建

2.设置

不要设置!!!最直接的给

3.图标

4.名字

5.图标显示数字

6.omnibar回车加入生词