Unity2017.4.26 修改AndroidSdkVersions 增加 AndroidApiLevel29 AndroidApiLevel30 AndroidApiLevel31

Unity2017.4.26 版本不支持 AndroidSdkVersions.AndroidApiLevel27 以上的设置。因为项目中接了不同渠道的SDK,每个要求的targetSdkVersion 还不太一样。项目用的Unity版本升级不现实。就只能想办法修改UnityEditor.dll。
确定好方向后,就各种在网上搜索怎么修改。试了好几种方法,最终参考了(https://blog.csdn.net/k20132014/article/details/89217298)这个链接中的方法实现的。

  1. 先用 ildasm.exe 软件打开 UnityEditro.dll。然后直接保存,自定义一个命名。
    在这里插入图片描述

![在这里插入图片描述
2. 用文本编辑类的软件打开上图中的Editor1.il 文件,并修改成如下图
在这里插入图片描述

.field public static literal valuetype UnityEditor.AndroidSdkVersions AndroidApiLevel27 = int32(0x0000001B)
.field public static literal valuetype UnityEditor.AndroidSdkVersions AndroidApiLevel28 = int32(0x0000001C)
.field public static literal valuetype UnityEditor.AndroidSdkVersions AndroidApiLevel29 = int32(0x0000001D)
.field public static literal valuetype UnityEditor.AndroidSdkVersions AndroidApiLevel30 = int32(0x0000001E)
.field public static literal valuetype UnityEditor.AndroidSdkVersions AndroidApiLevel31 = int32(0x0000001F)

添加上面的代码,然后保存

3.编译成DLL
用 lasm.exe 添加命令 ilasm.exe /dll/resource=Editor1.res Editor1.il 把上面修改好的 Editor1.il 文件编译成.Dll 文件。
在这里插入图片描述
在这里插入图片描述
把这个dll重命名UnityEditor.dll,然后拷贝到unity的Data\Managed文件夹下面。然后你的项目中就可以用AndroidApiLevel30,AndroidApiLevel31等。
PlayerSettings.Android.targetSdkVersion = AndroidSdkVersions.AndroidApiLevel30文章来源地址https://uudwc.com/A/rXrj5

原文地址:https://blog.csdn.net/m0_73817060/article/details/127368288

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

h
上一篇 2023年07月07日 11:17
下一篇 2023年07月07日 11:19