iOS 64 位支持是使用名为 IL2CPP 的脚本后端实现的。它与您的 C# 代码一起运行。
IL2CPP 运行时将提前编译器与虚拟机相结合,将程序集转换为 C++,同时利用标准平台 C++ 编译器生成本机二进制文件。最终结果是显著改善性能、平台兼容性和可维护性。
IL2CPP 是唯一支持在 iOS 上部署到 ARM 64 位的脚本后端,因此必须部署到 Apple App Store 以发布新应用程序。
如需了解有关 IL2CPP 的更多信息,请参阅博客文章:脚本技术在 Unity 中的未来发展 (The future of scripting in Unity) 和 Unity 中的 Apple iOS 64 位支持 (Apple iOS 64-bit support in Unity)。
Select IL2CPP in the Scripting Backend drop-down menu in Player Settings.
By default it will build for Universal architecture (including both ARM64 and ARMv7); if needed you can switch to specific architecture in Player Settings. There are a number of things that should be done before your application is up and running in 64-bits:
Method not found: 'Default constructor not found...ctor() of System.ComponentModel.Int64Converter'
。
答:反序列化程序和序列化程序通常仅通过 .NET 反射 API 引用某些类型,在这种情况下,可能会从项目中剥离这些方法甚至类。您可以通过以下方式提示托管代码剥离器使用了特定类/方法:通过 link.xml 或通过引入在一个脚本中对其进行显式引用的虚拟代码。