我需要创建一个Android应用程序,它包括部分写在Unity3D中(动画等)一部分在AndroidSDK(我的意思是用java写的实现,清单和资源)
其实这两部分我都有了(至少自认为准备好了 =))我无法弄清楚如何在它们之间进行通信。
我读过很多关于Unity3D和Android集成(主要是一些叫做“插件”的东西)的文章,并没有理解它是如何工作的。
我可以理解的通信的唯一途径是,从Unity3D的脚本(使用AndroidJavaClass和AndroidJavaObject)作出意图(广播),从而我的activity(用Java编写的)可以处理它。可是,我感觉这不是最好的解决办法...
关于这个问题,我阅读到的解答是,需要使用JNI(这是Java本地接口 - 为什么 - ?!?为什么我需要使用本机代码)
我需要java的一些中间层代码,目的是与我的java活动进行通信,使用AndroidNDK编译并作为一个插件包括到我的Unity3D项目?我如何写这个中间层代码?我是否需要使用UnityPlayer来代替“activity”作为基类,为什么?