准备工作
1、JDK、SDK、Eclipe、ADT或者Android Studio
2、Android项目创建
3、导入Android支持jar
Class.jar路径: Unity\Editor\Data\PlaybackEngines\AndroidPlayer\Variations\mono\Developmen\Classes
Android代码编辑
1、普通类,和java编写没有不同,可以带参数,可以有返回值。尽量减少两者之间的调用,最好是用java代码处理完毕再返回给unity。
2、需要使用到Activity并且在Unity里调用的类,继承UnityPlayerActivity。
protectedvoidonCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
// setContentView(R.layout.activity_main);
}
在路径 Unity\Editor\Data\PlaybackEngines\AndroidPlayer 下找到AndroidManifest文件,拷贝放到Unity工程Plugins/Android下,在里面添加
Unity调用
导出Jar文件,在Unity工程里创建Plugins/Android/lib文件夹,把jar文件放进去。
Unity里使用AndroidJavaClass、AndroidJavaObject类来调用、操作java代码。
AndroidJavaClass直接是这个类,
一般通过这个类获取静态方法,AndroidJavaObject也可以。CallStatic<返回值>(“方法名”,可变参数)
AndroidJavaObject是创建这个类的对象,和java对象使用相同
可以调用这个类里的任意方法和字段。Call<返回值>(“方法名”,可变参数),Get(“字段名”)
Android发送数据到Unity
使用UnityPlayer.UnitySendMessage方法
UnityPlayer.UnitySendMessage(“接收数据的脚本所在物体名”,“方法名”,参数)
只能发送string类型数据,不可变参数。