paramsobject[] args)67{68if(Instance ==null)69{70return;71}7273Debug.Log("call native function:"+funcName);74#ifUNITY_EDITOR75#else76#ifUNITY_ANDROID77CallJavaFunc(funcName, args);78#elifUNITY_IOS79CallObjCFunc(
1.1、UnityPlayer.UnitySendMessage("objectName", "functionName","value”); 这种方式相当于静态回调,指定某个脚本的某个方法获取。 优点:方便快捷,直接调用就好了。 缺点:只能传一个String,源码UnityPlayer里可以看到,就只能传一个String 1.2、 public class UnityCallbackListener : AndroidJavaProxy { public Uni...
packagecom.example.notchheight;importandroid.os.Bundle;importandroid.util.Log;publicclassMainActivityextendsUnityPlayerActivity{@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);}publicStringGetABS(intparam){Log.i("MainActivity","param = "+param);return"789";}} ...
拿到目标函数(LuaState.GetFunction) 执行目标函数(LuaFunction.Call) 在启动时,先把lua中的处理函数注册到C#端 mainEntryFunc = ToLua.CheckLuaFunction(L, 1); 然后C#端调用 mainEntryFunc.Invoke<int, R1>(funcType); lua端就可以收到回调 function private.MainEntryFunc(funcType, ...) public R1 Invoke...
string result = jo.Call<string>("getVersion"); 1. 2. 3. Android调unity也很简单 UnityPlayer.UnitySendMessage("objectName", "functionName","value"); 1. Unity中需要有name为“objectName”的对象,其绑定的脚本类需要这样的方法: void functionName(string str) ...
jo.Call("AndroidFunction","teststring"); } 这种方式需要修改android主activity让其继承UnityPlayerActivity,通过获得的jo调用该activity中的各种接口。 2.在android工程中不修改任何代码,直接在src中新建普通class(当然也可以放在新建的包中),不需要继承任何类,直接写入你需要提供给unity调用的接口,后面unity调用方式如...
uiText.text += _ajc.Call<string>("GetID"); _ajc.Call("copyTextToClipboard", activity, input); 5、打包安卓端arr(build->make module)放到unity端的plugins/Android文件夹中 完整代码 package com.example.mainlibrary; import android.content.ClipData; ...
mono是.net的一个开源跨平台工具,就类似java虚拟机,java本身不是跨平台语言,但运行在虚拟机上就能够实现了跨平台。 .net只能在windows下运行,mono可以实现跨平台编译运行,可以运行于Linux,Unix,Mac OS等。 6. OnEnable、Awake、Start运行时的发生顺序?哪些可能在同一个对象周期中反复的发生?
Android UnitySendMessage("SomeGameObject", "SomeFunction", "this is test message"); 就可以实现在 Native 代码中调用 Unity 中的方法 不过该方法限制性也比较强: 函数定义必须是带一个string参数的函数 有一帧延迟 完整的示例 我们以弹出 Native 系统提示框,在 Unity 获取用户是点击了确认还是取消为例 ...
(true); // 这一句很重要,保存对该Fragment的引用,防止在旋转屏幕等操作时时丢失引用(Fragment隶属于Activity) } // 调用 Unity // gameObjectName 为接受消息的Unity 中 GameObject 的名字 // functionName 为接受消息的GameObject 挂载 C# 脚本中的函数名 // _content 为发送给Unity 的内容 public void Call...