Unity和Android的交互——Toast实现
来源:互联网 发布:手机扫描条形码软件 编辑:程序博客网 时间:2024/05/01 03:05
看来很多网上的关于Unity和安卓交互的博客,发现很多都是用Eclipse的的jar包 ,不幸的是我的电脑的Eclipse挂了,也好,正好学习下安卓官方的开发工具Android Studio,不瞎比比,开始!
首先看下效果图 (只实现界面不漂亮,放张图就好)
小说说明:第一个按钮是调用了android的方法 ,返回了值 Java Return
第二个按钮是调用了android的Toast消息
第三个按钮是 也是调用了安卓的一个方法,不同的是这个安卓的方法紧接着又 调用了 untiy的方法 (这里就实现了android调用Unity的方法了)
下面给出android的代码
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
这里要先解释下
1.MainActivity extends UnityPlayerActivity 这个是要继承UnityPlayerActivity的,因为unity打包的apk默认的一个activity
2.第一个参数是unity中的对象名字,记住是对象名字,不是脚本类名。这句话我也是照着别人的博客来的,其实这个对象名字就是gameObject,它会去这个gameObject下着要调用的方法
接下来是C#代码
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
这个脚本我是挂在Scripts这个GameObject上的
通过上面的就是整个的代码逻辑,把上面的流程弄清楚了,接下来就是如何打包arr文件的问题以及一些报错,这个顺序我也想过,也觉得一开始就把怎么打包,怎么处理错误一步步来这样更好,但我始终觉得一开始把流程弄明白,出错都是一些方法问题。废话不说,首先看我的工具版本
1,android studio 2.2.2
jdk 1.8
sdk
这里我用的全是最新的包括 Android Studio 和sdk (我是不怕坑的坑,哈哈)
2 unity是 5.4 当然打包的sdk 和Android Studio 是一样的
好了 ,首先新建一个unity项目,导出android 开发包
这个就是导出包的android目录
用android studio将它打开,在Project的结构
接下来我们将代码写到src下的mainActivity中,这个我在开头已有了代码,这里不重复,我们将class.jar包放到libs目录中,这个class.jar的路径:D:\Unity\Editor\Data\PlaybackEngines\AndroidPlayer\Variations\mono\Release\Classes 这个是我的路径,我把untiy安装在D盘
具体为什么要class.jar请www.baidu.com
右键选择Ass Libraries 导入之后可以发现在build.gradle中就有他的引入了。
然后贴下我的AndroidMainifest.xml
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
截个图 说下我该的地方
1 这个包名和unity上的要保持一致
2 这个改了 不让在unity导apk的时候 会报没有找到这个主题Theme的错误,我的解决就是这个
3 一定要这个,我有不知道为什么 ,请知悉告知
再有一个就是导出arr包的时候要把原来的class.jar删除 因为本省untiy导apk的时候就会带上一个,会冲突(你也可以把Unity自带的那个干掉 ,这个我没试,有人试了有用 请告诉我下,谢谢)
(导arr包:android studio工具>bulid>bulid Apk, 导完的目录地址在你项目的\app\build\outputs\aar下 用解压工具打开,不需要解压 我用的是好压
1 打开这个文件 删除 class.jar
我们可以打开res文件下的 values.xml看下
这个图应该很清楚了 这个说一个报错就是
这个文件是原来可以自定义的theme 会报一个 找不到 colorAccent的定义 我的解决是宝item这三行全干掉,就不报错了 这个可能是安卓和unity的一个坑
最后
arr包和AndroidMainifest的位置 就可以导出apk包了
写的可能有点乱 ,跳动大 ,耐心点吧
最后提供下载地址
http://download.csdn.net/detail/sinat_23156865/9731010
- Unity和Android的交互——Toast实现
- Unity和Android的交互
- Unity和Android交互
- unity 如何实现安卓Android的toast功能
- Unity和android的交互流程
- Unity和Android之间的交互
- Android和Unity混合开发——Activity和Unity脚本交互和信息传递
- Unity和Android交互案
- Unity 和android JAVA交互
- [Android交互]Android与Unity的交互
- Unity调用android的方法,android调用Unity的方法,unity和安卓的交互
- Android&&Unity交互——同一个apk
- [Unity][安卓]Unity和Android Studio 3.0 交互通讯 前提-- Unity 的 Android设置
- 从零开始实现Unity与Android的交互(一)
- unity与Android的交互
- unity android 交互的问题
- Unity与Android的交互
- Unity和Android交互的好文章汇总
- 史上最全最强SpringMVC详细示例实战教程
- 次短路模板
- HDU 4333 Revolving Digits extkmp
- Android Studio实现代码混淆
- windows系统中,虚拟内存是什么?为什么要关闭虚拟内存?
- Unity和Android的交互——Toast实现
- double转换为json,当为空的时候自动赋值0.0;
- 使用Sqlite时有哪些可以优化的地方
- CSDN的博客搜索功能太弱,教你怎么搜索自己博客的文章
- iFunk品牌影响力不断攀升
- python 学习路线
- 常用的 wget 参数详解
- openstack keystone token 超时时间扩展
- 回归和分类的区别