Android嵌入unity界面,崩溃及卸载activity后不可点击问题

背景:
Android原生项目,突然有了要加3D展示交互的需求。而原生项目内部实现的模块和逻辑较多,不适合将Android打包放入unity,因此采用的Android原生嵌入unity。
问题描述:
Android嵌入unity的方法,可自行百度。成功嵌入后,有两三问题。
(1)未启动新进程前,杀掉activity后,整个app崩溃。
于是采用新进程的方法,并且重写kill函数。
参考: Android调用Unity,关闭Unity场景的一些问题
Android Unity3D 相互交互,及退出继承UnityPlayerActivity的Crash问题
(2)采用新进程,重写kill之后,还是有两个问题:
a、unity进程启动时,通信重启;找到问题原因是整个实例化,禁止实例化即可
b、unity进程关闭时,后台界面有3 、4 秒的时间是不可操作的,这种是太影响操作的。

重点就是问题b。
跟踪日志有这样一条:3399-3569/com.jucheng.platform E/Unity: java.net.UnknownHostException: Unable to resolve host "config.uca.cloud.unity3d.com": No address associated with hostname
猜测可能是跟unity内部上报云服务数据相关(原因是上报半天等待云返回,等待时间长并且是不可访问的)。想办法禁止unity上报,搜索后,找到该文章:How to disable Unity analytics?
核心方法有3个
1、移除analytics package :去package manager 窗口移除即可
2、确保 HW statistics disabled
project setting->player-> other setting-> configuration-> Disable HW Statistics* ,打对勾即可。
在这里插入图片描述
3、在场景awake最早的地方,加入以下代码:

 void Awake()
    {
        UnityEngine.Analytics.Analytics.enabled = false;
        UnityEngine.Analytics.Analytics.deviceStatsEnabled = false;
        UnityEngine.Analytics.Analytics.initializeOnStartup = false;
        UnityEngine.Analytics.Analytics.limitUserTracking = false;
        UnityEngine.Analytics.PerformanceReporting.enabled = false;
    }

最终,很快卸载的效果出现。unity不再analysis,也不再报 云的结果了。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

思依_xuni

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值