美文网首页
关于Hybrid+Xlua的一些问题记录

关于Hybrid+Xlua的一些问题记录

作者: 飞翔的蜗牛235 | 来源:发表于2023-12-10 17:09 被阅读0次

1:背景原因

现在很多的老项目都用的是Xlua,但是Xlua热更C#部分不是很好用,所以需要接入Hybrid来热更新c#,部分代码还是Lua+C#,这时就需要Xlua和Hybrid一起使用

2:遇到的问题

1.由于Hybrid热更代码不支持外部方法,就是一些DllImport的代码都会被裁剪掉,正常一些插件代码,我们只需要把插件的代码放到非热更程序集就好了,就等于插件的代码不热更,大部分都是这样处理就可以了
2.Xlua内部也有很多的Dllimport方法,假如我们直接把Xlua放到非热更程序集,但是由于老项目很多代码都需要生成Wrap.cs,要是直接这样做,等于C#的代码都不能热更了,所以这样是行不通的,因为大部分Warp的代码都是我们自己写的代码,编译Xlua时都会生成一个Wrap .cs 这样Lua才能调用到C#代码,这个文件如果要热更,编译的时候,Wrap 文件和xLua解释器一起编译,所以如果wrap要热更,那么xLua也要热更,所以就必须把xLua 做成热更dll,因为xLua.dll core 代码 + wrap 代码内容

3:解决办法

1.就是因为warp代码要热更 然后xlua内部有dllimport的代码 放到热更程序集会被裁剪 所以需要把DllImport的代码包装一层
这里我把Xlua的LuaDll.cs放到热更代码部分,然后dllImport部分的代码LuaExtern.cs放到非热更部分


xlua_1.png xlua_2.png

这样就可以实现Hybird热更C#,Lua调用C#的部分也正常使用

4:参考文献

1.Hybrid热更直接去官方网站 https://hybridclr.doc.code-philosophy.com/docs/intro
2.unity+Xlua案列 https://gitee.com/ldr123/HybridCLRXlua,非常感谢作者的分享
3.还参考了https://blog.csdn.net/weixin_38027841/article/details/131182787 博主的分享

相关文章

  • Macbook Air 2017版初体验与简单问题记录

    本文记录下个人第一次使用遇到的一些问题,也当做一个个人记录,将自己遇到的一些问题和解决方案提供给大家。 关于验机 ...

  • 写给要开始视觉记录的人2

    本次给大家分享的,是Christina L. Merkley, MA整理:关于视觉记录师,大家经常会问到的一些问题...

  • 写给要开始视觉记录的人1

    本次给大家分享的,是Christina L. Merkley, MA整理:关于视觉记录师,大家经常会问到的一些问题...

  • AFNetWorking与dispatch_semaphore_

    这个文章主要是记录自己遇见的一些问题,前者大家重所周知,后者不是那么家喻户晓,关于AFNetWorking的文章往...

  • 关于AFNetworking的一些问题记录

    前言 Afnetworking是ios开发中很常用的网络请求库。它的地址在这里AFNetworking 遇到的问题...

  • Webstorm debug调试相关

    网上有挺多关于Webstorm 怎么进行debug调试的文章,以前自己参考的时候也碰到一些问题,现在来做个记录,也...

  • 制作私有库引用Framework

    记:制作私有库时,遇到了一些问题,在此进行记录,避免再次踩坑。 感谢《关于制作私有pod库包含framework和...

  • iOS 打包上架问题(一)

    简介 好久没有写过新的东西了,最近写代码、打包、上架遇到了太多的问题,在此做个记录。 关于iOS 打包的一些问题 ...

  • 我的文章被锁定了……

    前天记录的一篇关于工作的文章,被锁住了…… 还是有一点糟心。。。。 记录的是第一次跟一个老师去拍摄所遇到的一些问题...

  • 关于前端进行文件下载

    最近在做关于适用js进行文件上传下载的功能,在下载部分遇到了一些问题,特此记录下来。 首先关于文件下载在后端我能想...

网友评论

      本文标题:关于Hybrid+Xlua的一些问题记录

      本文链接:https://www.haomeiwen.com/subject/xhrpgdtx.html