在某些情况下,我们需要使用原生代码来做一些事,比如集成一些第三方原生SDK, 以下这种方式介绍了如何将Unity导出成Android Studio工程,从而添加Android代码。 之后的教程中我还将介绍如何将Android写好的代码导回到Unity工程中。
Unity工程导出为Android工程
- 在Unity菜单中选择:File——Build Settings
- 为了能在Android Studio中更好的运行,构建系统选择Gradle
- 选中Export Project选项
- 选择你喜欢的目录导出
- Unity发生了改动时,只需导出后替换asset文件夹内容即可
Unity调用Android方法
private void sendMessageToAndroid(string method,params object[] args)
{
AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
AndroidJavaObject jo = jc.GetStatic<AndroidJavaObject>("currentActivity");
jo.Call(method, args);
}
- 在UnityPlayerActivity中准备好Unity要调用的方法
- 调用上面的方法,传入方法名(不带括号),及参数(多参,也可不传)即可。
Android调用Unity方法
UnityPlayer.UnitySendMessage("GameObject", "message", "args");
- 相当于调用了Unity中的
sendMessage()
。
网友评论