lua安全之关于lua扩展第三方库

android lua require第三方扩展库有三种方式:

 

1. 用c实现独立的lua模块作为android的第三方动态库来引入,优点是lua扩展库独立方便更新替换,缺点是需要修改虚拟机,开启宏支持dlopen调用的方式,并且还需要设置lua寻找so路径才能正确加载。具体操作流程看这里

2. 用c实现lua模块作为lua虚拟机动态库的一部分,优点代码实现简单方便,缺点是需要修改虚拟机,不方便lua虚拟机的更新替换。具体操作流程看这里

3. 用c实现独立的lua模块,在c层或者其他层使用lua虚拟机模块的导出函数来注册lua模块,优点是方便虚拟机的更新替换,缺点是lua拓展库更新替换不方便,若lua拓展库更新并不频繁可采用此种方法,具体步骤分为:

    a. 利用luaL_newlib和luaL_Reg来实现lua模块

    b. 利用luaL_requiref来注册lua模块

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章