一、项目目录树结构
由于时间有限,不可能在博客上花太多时间、也不可能每一个细节都说的很细,所以,下面的内容虽然一时间看着比较懵,但是文末有项目的GitHub地址,或者不懂的可以留言;
补充(2020年08月20日23:04:52):
最近有点浮躁,沉溺了很久,好久没有管博客了。
感谢那些关注我的兄弟们,还有那些私信我,希望加我联系方式的兄弟们,你们的私信我都有看,抱歉我没有回复你们,我还没有想好要怎么回复,或者加了好友了因为我太忙或太菜无法回复你们的问题时,会不会略显得有些尴尬,索性还是等一段时间吧,让我先缓一缓。
我不是什么大佬,仅是一个抱着对技术纯热爱有着几年研发管理经验乐于分享学习过程和撸撸代码的马上要奔三的有着一顶茂密头发会做饭喜欢篮球享受生活的普通人。最辉煌时,团队可管理支配的前后端研发人员有11人之多,中间经历大大小小的事情后,目前团队研发人员算上我,也才不过6个,虽然人少,干的事情却不少,虽然干的事情不少,但有时候却时常感觉有些凄凉落寞。
话就不多说了,本来只是想说一下License重构的事情,奈何发了一通牢骚,好了,等我有机会翻身了,我准备好好码一码这些年的经历,到时候,我们不聊技术,不聊代码,我们只聊生活!
这个是粗糙的项目结构,没有细分,实际应用的话应该是授权的代码要和验证的代码分开,防止授权的代码引进客户端系统中,被破解和拆穿,也为了防止公钥store被客户端用户串改;
正确、良好的结构应该是如下的:
由于上面的结构里面引入了其他包,故在最后,我就不放这个结构的代码在我的github上了
补充(2020年08月20日23:08:42):
想了下,目前GitHub上的结构和代码看起来有些邋遢、随性,而且关于License的使用说明不够详细,所以,我决定后面几天专门开个分支,来一把彻彻底底的重构,重构后的目录结构如下:
相关接口文档(如下图),后续我也会补充在新分支v0.2.1上,而且新分支不仅支持Lic文件的注册生成,还支持Lic文件的下载,总之新分支的功能将更加完备,作为开源代码将具有更佳的参考价值,敬请期待吧!
补充(2020年08月22日01:14:19),重构后的代码已上传至分支v0.2.1
GitHub地址:https://github.com/kobeyk/license.git
补充(2020年08月30日23:42:19)说明下,接口上加@VLicense注解时,拦截器都干了哪些事情及如何在业务系统中,实现我们自定义的证书验证
(主要是继承ACustomVerifyListener类,实现verify方法)
重点关注lic验证模块中的拦截器
核心代码实现:
注意这两个地方:
我们看下ACustomVerifyListener类
问题来了,如何在业务系统中,自定义License验证方法呢/span>
1、在license.app模块中,定义两个类,分别继承ACustomVerifyListener
2、如何使用呢面我们看下例子
我们启动app后,找到license.verify模块中的接口
然后,调用接口测试下:
随后,我们看下后台,看下我们自定义的验证方法是不是已经调用且奏效了/span>
我们知道lic文件中,限定的最大用户注册数是1000,假设我们把值调成1001,重启app再次调用接口会怎么样呢/span>
二、如何生成密钥对
上有,这个不再细说了,直接上文本:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!