unity调用eclipse导出的jar插件

最后我会给出项目源码

1.首先要明白unity与java之间的通信
unity调用java

// 直接调用java的静态方法, 我比较喜欢这种,简单明了
AndroidJavaClass klass = new AndroidJavaClass("com.unity.player.UnityInvokeAndroid");// 这是包名加你要调的类名
klass.CallStatic ("java方法名", "参数");

// 这种是调用非静态的方法, 参数是固定的
AndroidJavaClass klass = new AndroidJavaClass("com.unity3d.player.UnityPlayer");// 这里的这个包名必须要这样写
AndroidJavaObject jo = klass.GetStatic<AndroidJavaObject>("currentActivity");
jo.CallStatic ("java方法名", "参数");

unity调用java的方法还有很多,调用非静态,有返回参数等,在这就不一一介绍了,大家可自己上网查。

java调unity
java调unity就更简单了

UnityPlayer.UnitySendMessage(unity的对象名字, 方法名, "参数"); 

基础介绍完毕,接下来开始进入正题

我是这么做的,建一个空的unity项目,然后把项目导出成安卓项目。

这里写图片描述

记得 BundleIdentifier要修改成自己的,然后勾上红框中的 Google Android Project,这样下面Build按钮就会变成Export的了。

用eclipse导入刚导出的项目,然后删除 com.unity.player下的三个自带的文件
这里写图片描述

然后创建一个自己的java类
这里写图片描述
类里是这样的
这里写图片描述

在类中写好方法后把项目的IsLibrary 勾上
这里写图片描述

这时你就会看到bin下有个架包静静的躺在那里啦。这个就是你自己写的那个类的架包。
这里写图片描述

接下来把这个架包放到unity中,还有安卓工程里的res和mainfest文件也复制到unity中。(记得mainfest中的activity要改成你刚创建的那个类

完成后,unity中的文件路径是这样的
这里写图片描述

接下来你就可以尽情的用untiy去调java啦!!!

项目地址 :http://pan.baidu.com/s/1hs8xcsk 密码 4lfx

猜你喜欢

转载自blog.csdn.net/strivero/article/details/53169679