1、Unity下C#与Java交互的代码:
using (AndroidJavaClass jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer"))
{
using (AndroidJavaObject jo = jc.GetStatic<AndroidJavaObject>("currentActivity"))
{
jo.Call(method, args);
}
}
a)、using的用法是定义一个范围,在范围结束时回收这段范围内所申请的内存;
b)、method就是java代码中的方法,args就是传给method的参数
PS:
Unity与java的交互除了可以使用AndroidJavaObject的对象调用call来访问以外,还可以使用AndroidJavaClass的对象调用callStatic函数来调用java中静态类的静态方法
using (AndroidJavaClass jc_info = new AndroidJavaClass(className))
{
jc_info.CallStatic(staticMethodName, param);
}
2、Java下与Unity的交互代码:
UnityPlayer.UnitySendMessage("Main Camera", "show", edit.getText().toString());
a)、要使用UnitySendMessage这个静态方法需要往Android工程引入一个jar包,包的所在路径为Unity的安装目录:\Editor\Data\PlaybackEngines\androidplayer\development\bin\classes.jar,将这个包拷贝到Android工程的libs目录下就可以在代码中通过import com.unity3d.player.UnityPlayerActivity;和import com.unity3d.player.UnityActivity;来引用了

本文详细介绍了如何将Unity工程打包成apk,包括Unity与Java的交互代码、Unity中的打包步骤以及在Eclipse中打包Unity工程的方法。关键步骤涉及Unity的C#与Java交互、Android工程资源的处理以及AssetBundles的打包和使用。
最低0.47元/天 解锁文章
606

被折叠的 条评论
为什么被折叠?



