使用Sbo UI API SDK开发Sbo Add-on插件时,初学者往往被莫名其妙的一些错误和警示弄得一头雾水,本文旨在提供一个简单的说明文档,帮助Sbo UI SDK开发人员初学者在开发和调试的时候参考。
1、调试Sbo Add-on插件时,必须打开Sbo的主程序--即Sbo的客户端软件。
这个应该很好理解,因为我们开发的软件是一个Addon插件,既然是插件,就必须有宿主程序。就像很多支持互联网的插件程序其宿主是IE浏览器--也可以是其它浏览器,Sbo Add-on插件的宿主程序就是Sbo的主程序。
2、调试Sbo Add-on插件时,需要在调试的命令行参数上输入Sbo主程序识别码。通过命令行参数传递方式,将插件软件同Sbo主程序关联到一起,否则,Sbo Add-on插件怎么知道哪个才是自己的宿主程序呢?
3、Sbo主程序只能接受调试程序的功能附加,并不负责在调试过程结束之后对附加功能的销毁。
这一点非常重要,也是经常让初学者迷惑的地方。如果Add-on插件实现的功能是在独立一个窗口界面上,那么通过退出这个窗口就可以解决了附加功能的。但是事情往往没有这么简单,并且绝大多数情况下,事情都不是这么简单--毕竟一个Add-on插件要实现的是一个业务功能,而这个业务功能又必须同Sbo主程序集成在一起,自然的Sbo主程序需要一个进入到这个功能的入口。
入口一般分为三种:I、Add-on插件被集成到Sbo主程序的某个现行界面窗口中;II、Add-on插件通过在当前某个现行界面窗口中的某个新增、或者现存的按钮进入到Add-on插件窗口;III、通过新增菜单功能关联到Add-on插件功能。
必须说,这三种情况的任何一种情况,都将导致现行的Sbo主程序的改变。那么在调试的时候,一旦您改变了当前的Sbo主程序,在退出调试程序,Sbo主程序仍然保存着Add-on插件的残留。此时,如果Add-on中引用了诸如在Sbo主程序中唯一性控件(窗口中的控件Id唯一性、菜单项目的Id唯一性),因为在调试结束时没有销毁这些唯一性控件,那么再次通过Add-on插件调试程序进入到Sbo主程序的时候,就会报错--莫名其妙的错误。
解决这一错误的方式时,每次调试Sbo Add-on插件之后都退出Sbo主程序,而在调试之前再进入到Sbo主程序中。
需要说明的是:不用疑惑Addon插件正式使用的时候是否也会出现类似错误,答案是否定的。因为被注册到Sbo主程序的Add-on插件,总是随着宿主程序启动而启动,随着宿主程序的销毁而销毁。