android調用unity

 上一篇說到了unity調用android,這裏說說android調用unity:

可以直接看代碼沒有多少需要解釋的:

一、先 寫一個android調用unity的方法

 /**
     * 調用Unity的方法
     *
     * @param gameObjectName 調用的GameObject的名稱
     * @param functionName   方法名
     * @param args           參數
     * @return 調用是否成功
     */
    boolean callUnity(String gameObjectName, String functionName, String args) {
        try {
            Class<?> classtype = Class.forName("com.unity3d.player.UnityPlayer");
            Method method = classtype.getMethod("UnitySendMessage", String.class, String.class, String.class);
            method.invoke(classtype, gameObjectName, functionName, args);
            return true;
        } catch (ClassNotFoundException e) {

        } catch (NoSuchMethodException e) {

        } catch (IllegalAccessException e) {

        } catch (InvocationTargetException e) {

        }
        return false;
    }

這裏說一下“gameObjectName”這個參數,就是下圖中,紅色圈中的的名字,這裏需要將調用的方法所在類添加到裏面,名字自定義

unity端調用:

   Boolean bl = callUnity("GameObject", "AndroidCallUnity", "來自android");

二、unity端提供的方法:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class aarTest : MonoBehaviour
{
   
    public void AndroidCallUnity(string msg) {

        Debug.Log("AndroidCallUnity callback onSuccess---------: " + msg);
    }

}

 

以上就是android調用unity

 

 

                                                                                                                                                                        -END

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章