unity 安卓热更新代码的最新方法: 通过Mono加载新的重新编译的dll

本文介绍了如何通过修改Mono源代码并编译新的libmono.so来实现Unity Android游戏的代码热更新。作者分享了自己的实现流程,包括下载并替换Assembly-CSharp.dll,以及提供的预编译libmono.so文件,简化了加密处理。文章还提及了使用hook技术的可能性,但作者不熟悉安卓开发,希望其他人能补充相关知识。
摘要由CSDN通过智能技术生成

     unity代码热更新方法有很多,但实用的目前就是lua,但我不喜欢lua,一直想用c#进行热更新。

     在2012年,就有人提出既然Mono是开源的,那么完全可以通过修改mono源代码实现重新加载dll实现热更新。可惜这个楼主只提出了设想,并没有具体实现细节。

     今年,也就是2016年,我在一个技术群里得知,其实绝大部分大公司,目前用的都是这种方法实现热更新,其中一个游戏就是超级地城之光。既然知道已经有人在做了,那么我就可以尝试一下。自己捣鼓前,我还百度了一下,果然,已经有人有教程了:

     http://blog.csdn.net/qq_27772057/article/details/51945700

     我觉得这个人的博客已经很详细了,不过由于整体看上去比较复杂,所以可能细节上不好处理。

     我自己重新去实现了一下整个流程,已经测试通过。

     目前的策略是,通过修改mono源代码,编译出新的libmono.so

     启动游戏时候,下载Assembly-CSharp.dll,这样进入游戏就会使用更新后的代码。

     为了让大家方便一些,我自己编译好了4.6版本的libmono.so, 除了热更新,其实还有加密的功能,加密算法也

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yxriyin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值