unity android so热更,Unity Android DLL热更

有异曲同工之处。

这里是为了能够在Android下热更C#代码

另外一个更高层次的是更新so 实现il2cpp 的热更

搭建mono编译环境:(参考自:https://blog.csdn.net/huutu/article/details/58184031)

1.下载mono的unity分支 源代码  https://github.com/Unity-Technologies/mono

2.下载ubuntu 14 64

3.unity 5.6版本的NKD必须是r10e  下载NDK

4.sudo su 切换到root安装    ./android-ndk-r10e-linux-x86.bin

5.安装后在安装目录里面找到 RELEASE.txt ,里面记录着NDK 完整版本号,去掉rc4 ,修改为 r10e

6.设置环境变量 ANDROID_NDK_ROOT     sudo gedit /etc/bashrc

7.添加一行 export ANDROID_NDK_ROOT=/home/css/android-ndk-r10e;

8.让环境变量立即生效  source /etc/bashrc  ,  测试是否添加成功   echo $ANDROID_NDK_ROOT

9.修改脚本build_runtime_android.sh,sudo gedit build_runtime_android.sh,

搜索KRAIT_PATCH_PATH 修改,KRAIT_PATCH_PATH="${CWD}/android_krait_signal_handler/build",

搜索(cd "$KRAIT_PATCH_PATH" &&修改(cd "$KRAIT_PATCH_PATH" && perl ./build.pl),,

android_krait_signal_handler/build.pl 删除第一行注释

10..安装编译环境

autoconf ,automake,bison,gcc,gettext,glib,make,perl

11.直接在mono目录下执行 ./external/buildscripts/build_runtime_android.sh

输出目录在 builds/embedruntimes/android/xxxxxx

------------------------------------------------------------------------------------------

采坑

1.修改 build_runtime_android.sh  -fpic -g 去掉-g  添加-O2 优化,其中O3 O4会闪退

2.

clean_build "$CCFLAGS_ARMv5_CPU" "$LDFLAGS_ARMv5" "$OUTDIR/armv5"

clean_build "$CCFLAGS_ARMv6_VFP" "$LDFLAGS_ARMv5" "$OUTDIR/armv6_vfp"

改成

#clean_build "$CCFLAGS_ARMv5_CPU" "$LDFLAGS_ARMv5" "$OUTDIR/armv5"

#clean_build "$CCFLAGS_ARMv6_VFP" "$LDFLAGS_ARMv5" "$OUTDIR/armv6_vfp"

3.image.c 代码出 name 要判空一下,否则反射会闪退 Assembly.LoadXXXXX

4.重定向路径的时候要注意路径的正确性,Application.perXXXXXPath

2013.3.0 f1 编译方法一样,只需要更新mono相关即可,NDKr10e 一样可用

TODO

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值