nice 收着了


unity和Android间的简单通讯(以toast为例)

unity发布Android端的话偶尔需要在Android端进行开发一些功能,比如打开蓝牙啦,wifi,以及咳咳。。。插入广告。

官方给的方法是利用unity中的class.jar文件。现在简易地讲解一下方法。

首先新建一个Android工程,我用eclipse,较为方便。

然后要记住包名,(到时候要与unity中的包名一致)。

然后要导入unity的class.jar,我的路径是在D:\unity\Editor\Data\PlaybackEngines\androidplayer\release\bin,供大家参考,找到class.jar后,导入到Android工程,clean一下工程,然后将 MainActivity继承UnityPlayerActivity,将setContext删掉(因为unity用的自己的布局,所以要把Android的布局删掉)。

然后按图中所示,写一个showToast()方法,记住,有关ui线程的事件一定要写在runUIThread中,当然也可以用Handle通讯解决。不过这相对麻烦。

然后右击工程,Export——>jar file,只需要选择src文件夹就足够,然后导出jar文件

然后新建一个unity工程,再在asset文件夹新建Plugins,在新建Android文件夹,将Android工程中的AndroidManifest.xml拖进去unity的Android文件夹中,再新建bin文件夹,把class.jar拖入bin中,把Android工程中的res文件夹直接拖入unity的Android文件夹中,如图

新建一个C#脚本,编写如下

AndroidJavaObject就可以获取动当前activity,用call方法获取到showToast方法,Call("方法名",参数),这个参数实际上是个array数组。

然后创建在场景中创建一个button。

最后在play setting中将包名改掉

然后build就可以了,,

这只是很基础的操作,不过有Android开发经验的朋友举一反三,其他的方法应该可以做得出来,如果没有Android开发基础,又不想从头学的朋友,推荐一个教程,http://www.unitytrain.cn/course/61

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

nice 收着了

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭