当前位置: 代码迷 >> 综合 >> Unity在打安卓包时 AndroidManifest.xml 中设定的其它启动模式 “singleTop“ 打完安卓包之后被自动改为了“singleTask“
  详细解决方案

Unity在打安卓包时 AndroidManifest.xml 中设定的其它启动模式 “singleTop“ 打完安卓包之后被自动改为了“singleTask“

热度:29   发布时间:2023-12-14 04:41:39.0

出错的场景:
unity在接入登录SDK或者广告SDK之后弹出了SDK的登录页,或者广告页面,此时切换到后台
再切换到游戏页面,发现登录页面(或广告页面)消失

例如:当我们登录之后,用手机发送验证码,然后切换出去查看短信验证码,之后再回到游戏,发现登录页面消失

出现错误的原因:
我们在接入SDK中,登录SDK一般要求我们将AndroidManifest.xml中的启动模式设置为:android:launchMode=“singleTop”
在这里插入图片描述

如何验证unity确实做了这件事儿:
打包时,勾选导出安卓工程:
在这里插入图片描述

然后我们用 Android studio打开导出工程查看:如下图所示,确实导出的时候被unity强制 将android:launchMode="singleTop"修改了回去
请添加图片描述

**如何修改:**我们只需要将导出来的工程改为 android:launchMode=“singleTask” 改回 android:launchMode=“singleTop”
然后重新用 Android Studio打APK包,那么就解决了这个问题

关于安卓四中启动模式的介绍:大家可以查看以下链接
https://www.cnblogs.com/claireyuancy/p/7387696.html

疑问:如何实现不用导出安卓工程,采用其它方案实现一键打包,同时打出来的包 启动模式为我们修改之后的值 android:launchMode=“singleTop” ?

原因:因为每次导出安卓工程然后再修改,之后再打包,其实挺麻烦的,而且容易忘记,具体方案还在研究中。
如果有小伙伴有更好的方案欢迎进行技术交流,
QQ群:68356214
在这里插入图片描述

  相关解决方案