by Anhkgg | 2018年12月16日 | 078/100
这篇其实应该几天前就写了的,不过耽搁了,现在补上。
已经忘了那天怎么突然想起去搜索了一下"迅雷API",然后看到了"迅雷7应用开发在线文档"。
地址是:http://xldoc.xl7.xunlei.com/
其中"BOLT界面引擎"真的是让我对迅雷的技术人员刮目相看,虽然我第一次听说这个界面库。
虽然我好像要找到的是"迅雷下载开放引擎",确实有,但是好像过时,并未更新开放,现在已经不能使用。
我对bolt前前后后大致了解了一下,对原理、如何使用有了一定的印象。
为什么我会突然对此感兴趣呢?因为我其实一直像破一下迅雷,比如去广告、去浏览器窗口页、高速(离线)下载等等。
但确实比较难,一直没下手,这次看到bolt真的是眼睛一亮。
因为最新的迅雷依然是bolt开发,虽然内部使用的bolt已经更新,但有迹可循了。
blot大致来说(我的粗略理解):
1. 通过ui树来组织界面,提供常用的ui元对象。
2. 使用xml来定义界面元素,lua来完成界面逻辑。
3. 更多功能通过lua调用c接口来完成。
4. xml和lua通过打包加密发布为xar文件
5. bolt sdk提供了几个dll,XLFSIO.dll去解密xar
6. bolt还有字节的绘图引擎(位图、文本、矢量),据说比gdi好
更多细节还需要继续看文档学习,目前大致了解这些。
bolt究竟如何不好说,不过确实已经有很多产品在使用,并且迅雷自己的产品也在使用,应该是比较完善成熟的一套东西了。
另外一个很有名的界面库duilib,也有很多公司再使用,比如360、腾讯、百度等等,并且开源,其实有时间是很有研究的价值的。
不管如何,我都是非常佩服写界面的同志的,更何况是自己开发界面引擎的牛牛。
不过我此时的重点不过使用bolt,而在于破迅雷,希望再后面的研究中能够有大大的帮助。
(完)