APP联合Unity3D实战
💡
原文中文,约24400字,阅读约需59分钟。
📝
内容提要
该文章介绍了在Unity中与iOS和Android进行代码交互的流程。首先,下载Unity无黑Logo版别和相关东西。然后,通过UnitySendMessage方法实现iOS和Unity之间的代码交互。接下来,介绍了在Unity工程中的代码实现和在原生Xcode工程中的代码实现。最后,讲解了在iOS和Android中集成Unity工程的步骤。
🎯
关键要点
- 下载Unity无黑Logo版别和相关东西,确保各端一致。
- 使用UnitySendMessage方法实现iOS与Unity之间的代码交互。
- 在Unity工程中实现代码,使用DllImport导入外部函数。
- 在原生Xcode工程中实现对应的Objective-C代码。
- 通过C#同名方法反射实现与原生代码的交互。
- 在Unity工程中设置NativeBridge,分别实现iOS和Android的交互方法。
- 在iOS中通过NativeCallProxy.h和NativeCallProxy.mm实现原生方法的调用。
- 打包Unity工程并集成到另一个iOS工程中,手动或通过脚本修正配置。
- 在Android中下载和解压项目,生成Android渠道的Gradle项目。
- 将Unity Library模块增加到原生Android项目中,修正Gradle文件并同步。
- 确保应用程序只显示一个启动图标,去掉多余的入口定义。
❓
延伸问答
如何在Unity中与iOS进行代码交互?
可以使用UnitySendMessage方法实现iOS与Unity之间的代码交互,但需注意该方法的类必须挂载在一个game object上。
在Unity中如何实现与原生代码的交互?
通过C#同名方法反射和DllImport导入外部函数来实现与原生代码的交互。
如何将Unity工程集成到iOS项目中?
可以手动将Unity打包文件移动到iOS项目的unity3d目录下,并修正相关配置。
在Android中如何集成Unity项目?
需要下载和解压项目,生成Android渠道的Gradle项目,并将Unity Library模块增加到原生Android项目中。
使用UnitySendMessage方法时需要注意什么?
需要确保发送消息的类挂载在一个game object上,并注意线程问题,可能需要告知Unity主线程执行回调。
如何确保应用程序只显示一个启动图标?
需要去掉unityLibrary的AndroidManifest.xml中多余的入口定义,只保留原生Android应用所需的部分。
🏷️
标签
➡️