android unity 关闭应用_Android Unity3D 相互交互,及退出继承UnityPlayerActivity的Crash问题...

本文介绍了Android与Unity3D交互的步骤,包括Android调用Unity的方法和Unity调用Android的方法。特别讨论了在关闭应用时遇到的Crash问题,分析了UnityPlayerActivity的onDestroy方法中mUnityPlayer.quit()导致的问题,并提出了两种解决方案:一是通过设置新的进程避免影响主进程;二是重写UnityPlayer的kill方法。这些解决方案能有效防止退出Activity时的Crash并提高响应速度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这是我第一次写博文,只是我做过项目的一些技术点,也就相当于自己的笔记,希望能对看到文章的你有用。

公司项目比较多使用AR,一般我们都是使用第三方SDK,使用的EasyAR。它有两种方式来实现AR功能,第一种是用JNI,使用NDK(自行百度google查找相关技术文章),第二种是Android和Unity3D的交互,Ar图形,模型视频等由Unity3D来完成,Android来处理 加载创建 扫描 脱卡等事件处理(着重讲这部分)。

Unity导出的项目:

我记录Android这部分的操作 不记录Unity3D的

首先你要让Unity的工程师导出一份Android项目给你,当然导出的AS项目(我没用过Eclipse的方式)

Unity导出项目结构.png

lib文件下面是要使用的Jar包

src中包括了assets,jniLibs和java文件夹下的UnityPlayerActivity,UnityPlayerNativeActivity,UnityPlayerProxyActivity.建议使用UnityPlayerActivity.java,assets文件中是unity的一些资源文件,包括了场景和渲染的一些文件,jniLibs当然是所用到的.so文件了

如果你已经有Android的工程项目了,此时你只需要把assets的文件和lib中的文件,和jniLibs的文件拷贝到你的项目中去,然后把需要配置的类和权限在AndroidManifest.xml中配置一下(EasyAR需要用到摄像头的权限,在6.0以上的版本也无需去申请权限,SDK中有集成了。如果你不放心 可以再去申请)

没有项目,那么只需要把unity的导出项目直接导入到你的Android Studio中即可。

下面就是我导入完成后的项目结构图

项目结构.png

ArMapActivity

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值