在Unity中使用Android原生代码

2017-07-26Unity
Unity
Unity

在某些情况下,我们需要使用原生代码来做一些事,比如集成一些第三方原生SDK, 以下这种方式介绍了如何将Unity导出成Android Studio工程,从而添加Android代码。 之后的教程中我还将介绍如何将Android写好的代码导回到Unity工程中。

<!--more-->

Unity工程导出为Android工程

  1. 在Unity菜单中选择:File——Build Settings
  2. 为了能在Android Studio中更好的运行,构建系统选择Gradle
  3. 选中Export Project选项
  4. 选择你喜欢的目录导出
  5. Unity发生了改动时,只需导出后替换asset文件夹内容即可
Export
Export

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()

评论区

暂无评论