Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

为什么只更新so和global-metadata.dat会启动时崩溃? #14

Open
1987skywalker opened this issue Sep 22, 2020 · 1 comment
Open

Comments

@1987skywalker
Copy link

1987skywalker commented Sep 22, 2020

这两部分,libil2cpp和assets目录,必须匹配(即需要在同一次打包中提取,可能有的变了,有的没变,增量方式只提取变化的部分)才能正常工作,不然Unity会在启动时崩溃。

请问为什么和assets不匹配会崩溃?另一种改MetadataLoader.cpp的so热更方案好像没这问题

@noodle1983
Copy link
Owner

才看到,说说我知道的。
即使所有资源都打了bundle,assets里面还是保存一些全局的数据定义。
按漏出来的老代码, 里面包含了打包时所有序列化脚本的定义,Unity启动的时候会去初始化。
我试过,如果没动到序列化脚本的定义,小改代码,其实是跑得起来的。
但是,这个说法是没有经过严格测试的。哪天不匹配崩了,其实我也答不上来,我没代码, 我不知道。

至于改MetadataLoader.cpp的so热更方案,我不知道, 不做评价。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants