InjectFix
腾讯InjectFix热更
Jack Yan
Unity开发;
Keep Reading , Keep Writing , Keep Coding.
展开
-
【InjectFix】04 官方案例
以配套的Helloworld为例,编辑器下演示IFix的使用 一、准备工作 Helloworld位于IFix目录下 其中Calc.cs就是待修复的代码,Helloworld.cs是Calc.cs的测试。 运行一下Helloworld的场景,看下控制台的打印,可以看到Calc.cs是错误的。 二、配置 和xLua类似,你得配置下要预处理的代码,预处理过的代码才可能在运行时切换到补丁代码。 [Configure] public class HelloworldCfg { [IFix] stati原创 2020-10-15 14:32:52 · 249 阅读 · 0 评论 -
【InjectFix】03 InjectFix FAQ
执行Patch for android或者Patch for ios时,报“"please put template file for android/ios in IFixToolKit directory!” 解决这个错误需要制作一个编译模版文件放到IFixToolKit目录: 假如你制作的是android的模版,请执行一次普通的android构建,在构建的过程中,到“工程目录/Temp”目录把UnityTempFile打头的文件都拷贝出来,其中一个“UnityTempFile开头”的文件就是你刚刚打原创 2020-10-15 14:15:21 · 449 阅读 · 0 评论 -
【InjectFix】02 IFix使用手册
IFix使用手册 [IFix.Patch] 用途 在补丁阶段使用;原生代码修复。如果发现某个函数有错误,就可以使用该标签给函数打补丁,打上这个标签的函数,童鞋们就可以随意修改该函数。 用法 该标签只能用在方法上,直接在要修改的函数上面标注一下这个标签即可。 举例 这个函数本来的意思是两个值相加,但现在写错了,所以可以给该函数打上[IFix.Patch]标签,然后修改就可以了 public int Add(int a,int b) { return a*b; } [IFix.Pat原创 2020-10-15 14:12:17 · 2949 阅读 · 1 评论 -
【InjectFix】01 快速入门
快速入门 接入示例 判断有补丁就加载补丁 var patchPath = "./Assets/IFix/Resources/Assembly-CSharp.ill.bytes"; if (File.Exists(patchPath)) { PatchManager.Load(new FileStream(patchPath, FileMode.Open)); } 配置 热补丁的实现依赖于提前做些静态代码插入,所以需要配置对哪些类预处理,配置了才能被修复。一般而言,只要不是性能要求很苛刻的原创 2020-10-15 14:09:34 · 477 阅读 · 0 评论 -
【InjectFix】00 Unity代码逻辑热修复 Unity下Bug修复神器,腾讯InjectFix开源啦!
Unity代码逻辑热修复 可用于Unity业务的bug修复,支持Unity全系列,全平台。 几个亮点 直接在Unity工程上修改C#即可更新 老项目无需修改原有代码即可使用 每个游戏一份私有补丁格式,安全更有保障 安装 编译 Window下打开源码包的Source\VSProj\build_for_unity.bat,UNITY_HOME变量的值修改为指向本机unity安装目录 运行build_for_unity.bat 复制 这里对应的是一个Unity工程目录 IFixToolKit拷原创 2020-10-15 14:02:23 · 315 阅读 · 0 评论