Android/Unity混合开发屏幕旋转问题以及8.0透明页面兼容

简介: 众所周知,人生是一个漫长的流程,不断克服困难,不断反思前进的过程。在这个过程中会产生很多对于人生的质疑和思考,于是我决定将自己的思考,经验和故事全部分享出来,以此寻找共鸣!!!

👉即将学会

Android嵌套Unity后,屏幕旋转出现的页面问题。

👉背景

🙈小空(⌚):小芝,你看过韩剧继承者们吗?这两天我在看。

🙎小芝(💗):看过,看过,超级好看的。那时候边看边哭呢。

🙈小空:好,不说这个,我们解决下Android嵌套Unity的问题。

🙎小芝:......,你有病吧,你不聊你说什么,活该单身去吧!

👉实践过程

前段时间做个项目是 Android 集成Unity的,混合开发。测试没问题,发布出去了。

但是突然收到消息说崩溃了。没办法,看呗。然后查看平板设备,发现是8.0系统问题

它不让透明的页面申请屏幕变换。即setRequestedOrientation(......)

这个请求我写在了BaseActivity里,没办法只能去掉了,然后我将除透明activity外的页面在清单页面中写上横屏

android:screenOrientation="landscape"
复制代码

然后运行,嗯?没成功?然后我单独起个demo来看看,这不没问题吗。坑我。

我停止下来,仔细想了想,发现问题所在是Unity的问题导致。试验把unity效果注释掉,确实正确了。

附:我的项目是Unity导出android项目,然后放到Android Studio中编译成aar,放到自己的android项目中。

我就去Unity中修改了导出横竖屏设置。(unity/android都是自己开发,所以清门熟路)

网络异常,图片无法展示
|

这个屏幕方向有几个选择

  • Portrait:竖屏
  • Portrait Upside Down:竖屏,手机倒过来
  • Landscape Right:横屏,屏幕在home键右边
  • Landscape Left:横屏,屏幕在home键左边(比较常用,我选择的也是这个)
  • Auto Rotation:自动旋转屏幕
  • Auto Rotation有额外选项,可以只勾选某些方向,根据个人需求来指定旋转方向。

网络异常,图片无法展示
|

然后重新编译了一次,运行没问题,有3D的界面不自动变了。Android 8.0系统也没事了。

回忆一下

  1. 透明Activity取消申请屏幕旋转的代码,对不透明的页面设置。
  2. Unity项目导出的时候设置屏幕方向
  3. 成功

忘记在哪看到的一句话了, 透明Activity的屏幕方向跟随下面那个不透明activity的方向。所以只要保证跳转透明页面的activity的屏幕方向正确即可。

附赠 Android的屏幕方向列表:

网络异常,图片无法展示
|


👉其他

📢作者:小空和小芝中的小空

📢这位道友请留步☁️,我观你气度不凡,谈吐间隐隐有王者霸气💚,日后定有一番大作为📝!!!旁边有点赞👍收藏🌟今日传你,点了吧,未来你成功☀️,我分文不取,若不成功⚡️,也好回来找我。

相关文章
|
3月前
|
JavaScript Android开发
使用贝叶斯曲线滑动安卓屏幕(autojsPro7)
使用贝叶斯曲线滑动安卓屏幕(autojsPro7)
63 0
|
5月前
|
Linux Android开发 iOS开发
基于.Net开发的ChatGPT客户端,兼容Windows、IOS、安卓、MacOS、Linux
基于.Net开发的ChatGPT客户端,兼容Windows、IOS、安卓、MacOS、Linux
88 0
|
4月前
|
XML Java Android开发
Android Studio App开发之捕获屏幕的变更事件实战(包括竖屏与横屏切换,回到桌面与切换到任务列表)
Android Studio App开发之捕获屏幕的变更事件实战(包括竖屏与横屏切换,回到桌面与切换到任务列表)
39 0
|
4月前
|
Android开发
UniApp Android 页面拖动,去掉半圆形阴影
UniApp Android 页面拖动,去掉半圆形阴影
45 0
|
1月前
|
存储 XML 编译器
【Android 从入门到出门】第二章:使用声明式UI创建屏幕并探索组合原则
【Android 从入门到出门】第二章:使用声明式UI创建屏幕并探索组合原则
48 3
|
3月前
|
数据采集 编解码 图形学
Android平台Unity下如何通过WebCamTexture采集摄像头数据并推送至RTMP服务器或轻量级RTSP服务
Android平台Unity下如何通过WebCamTexture采集摄像头数据并推送至RTMP服务器或轻量级RTSP服务
101 0
|
4月前
|
XML Java Android开发
Android Studio App开发之实现简单的启动引导页ViewPager(附源码 实现App的欢迎页面)
Android Studio App开发之实现简单的启动引导页ViewPager(附源码 实现App的欢迎页面)
82 1
|
4月前
|
Android开发
Android Studio APP开发入门之活动Activity中启停活动页面的讲解及实战(附源码,包括Activity的启动结束、生命周期、跳转等)
Android Studio APP开发入门之活动Activity中启停活动页面的讲解及实战(附源码,包括Activity的启动结束、生命周期、跳转等)
41 0
|
4月前
|
存储 移动开发 JavaScript
【原生】sd.js帮助您简化繁重的获取数据、存储数据(CRUD)骚操作(吐槽~在安卓9.0以下或者IOS10.X以下手机端H5页面不支持,在这两种情况下的系统只能使用ajax或者原生js请求后台数据)
【原生】sd.js帮助您简化繁重的获取数据、存储数据(CRUD)骚操作(吐槽~在安卓9.0以下或者IOS10.X以下手机端H5页面不支持,在这两种情况下的系统只能使用ajax或者原生js请求后台数据)
|
4月前
|
Dart 开发工具 Android开发
Flutter混合开发:Android中如何启动Flutter
Flutter混合开发:Android中如何启动Flutter 如果你想在你的Android应用中使用Flutter,则需要遵循以下步骤: