设为首页收藏本站

天空语文 如皋  九华 作文  教学

 找回密码
 我要加入(register注册)

QQ登录

只需一步,快速开始

快捷登录

使用微信账号登录

天空新人

李白202091

蓝兰的花朵

天晴朗

嘿嘿嘿

joycy

颂颂.g

酷土土土

用户已注销

Jeremy

ʚ贴贴ɞ

果子黑

H·princess

李苏楠

方大金

依灵灵灵.

金川兰

lulululu

lisunan18795762

清风拂过

楠大人

王悦

朴弟

赵珺琦

王佳慧

八5霍程

查看: 200|回复: 2
收起左侧

华为发布折叠屏官方适配方案

  [复制链接] TA的其它主题
来自- 中国江苏南通

Ta在天空论坛排行

积分:NO. 1 名

发帖:NO. 1 名

在线:NO. 1 名

gwp! 发表于 2019-3-18 21:59:54 | 显示全部楼层 |阅读模式 来自- 中国江苏南通
天空便利贴:这里是语文的天堂,也是文学的乐园。如有原创或喜欢的文章,可推荐发表,供坛友欣赏提高。您的热情和才华是天空论坛最大的财富。
来自- 中国江苏南通

加入天空更多精彩

您需要 登录 才可以下载或查看,没有账号?我要加入(register注册)

x
华为发布折叠屏官方适配方案 原创 InfoQ 2019-03-18 12:00:45


2 月底,在西班牙巴塞罗那召开的 MWC2019 华为终端全球发布会上,华为正式发布了 5G 折叠屏手机 HUAWEI Mate X,同时,华为也宣布这款手机将在今年年中上市,消息一出,瞬间刷爆朋友圈。关于这款手机背后的黑科技,相信大家都已经有所了解,我们就不再展开讨论,对于开发者来说,最关心的莫过于折叠屏的适配问题,对此,我们联系到了华为终端的相关技术专家,为大家获取了折叠屏的官方适配方案,以下全文就是适配文档。
背景和范围
此文档针对华为 Mate X 以及后续可能的折叠屏产品,提供应用适配的规格要求描述,以及适配指导。以确保应用在折叠屏显示各种形态下,皆可以布局正确,显示美观,并且屏幕物理形态切换时,应用尽可能做到不重启,不中断当前用户业务。
适用范围
文档适用于 Android 平台 APP 相关的设计,开发,测试人员等。
规格描述
Mate X 物理形态概述



对于通用软件,可能存在如下形态,即:
  • 展开态,全屏点亮工作;
  • 折叠主屏态:折叠态,主屏工作;
  • 折叠副屏态:折叠态:副屏工作。
静态适配需求规格描述
大屏静态显示规格:






大屏规格定义:应用在大屏展开下,可以撑满全屏显示,且在横竖屏切换形态下,布局和操作按键都正常,不出现任意方向的黑边。
如上图,A 图为撑满全屏,OK、BCD 都是错误的适配规格。
主屏静态显示规格
屏幕比例:19.5 : 9
参照下图:



副屏静态显示规格
副屏规格:25 :9
副屏下,默认不以全屏显示,以主屏比例显示,即在副屏下也显示 19.5:9 居下显示。应用只需要做好 19.5:9 的适配即可,副屏以 19.5:9 在屏幕下方显示由系统统一控制。



动态适配需求规格描述
说明:
(1)任意形态下打开一个应用,满足以上静态显示规格;
(2)当用户物理形态切换时,应用需要做到不重启应用,并自动在新的设备形态下按照静态规格布局。
即:在用户进行展开,折叠等操作, 应用任务不中断,自动适应各种屏幕下的静态布局规格。



设计和开发指导
大屏布局 UI 设计指导
如下适配建议以及各应用适合适配类型,仅作为推荐性建议,具体由应用根据各自业务特性进行针对性设计。
适配建议一:X 轴方向自适应
说明:
即,尽量保持 Y 轴方向上元素不变,X 轴方向上自适应。
示例:









范围(推荐性):适用于界面元素相对单一,没有大量列表类、或较多显示元素的页面。
适配建议二:布局内容扩展
说明:参考 pad 布局显示更多内容,对于区分了手机和 pad 布局的应用,在展开态优先考虑参考 pad 的大屏布局适配展开态界面,显示更多内容;尽量保证 Y 轴方向元素的不变。
示例:






范围(推荐性):一般适用于 WEB 类应用,页面特征一般为元素多,适配原则以尽量显示较多元素优先。
适配建议三:分栏布局
说明:对于设计过分栏能力的模块,需要在展开态体现分栏布局。
示例:



范围:一般有明显 list 二级菜单的元素结构比较适合。
适配建议四:横竖屏布局一致
说明:考虑到展开态 8:7.1 的比例,展开态的横屏和竖屏建议一套布局。横竖一致;不对展开态的横屏特殊处理,挪移布局不用体现。
示例:






适配开发指导
开发约束
说明:具备 8:7.1, 19.5:9, 25:9, 三种可能的显示形态。
强烈建议应用支持可变比例显示(resizeable),在可预见的屏幕比例范围内,都可以做到良好适配。且在比例切换时,应用能够自己处理 screenSize 变化,不需要重走生命周期。总结来说,即要求应用可以完全支持自适应布局,无论静态还是场景切换下。
适配规格:支持热切换能力
应用适配折叠屏需要做“屏幕比例适配”和“切换显示比例应用不重启适配”。
屏幕比例适配
适配方式 1:应用支持自适应能力(推荐)
应用只要能做到自适应,在任意比例的屏幕都能做到全屏显示。
1. 应用如何申明自适应



2. 设置方法:在 manifest 文件的 或 节点中设置 android:resizeableActivity 的值为 true,可声明应用支持自适应显示,Activity 将能以分屏和 freeform 模式启动。
复制代码
android:resizeableActivity=["true" | "false"]
适配方式 2:设置应用支持的最大比例和最小比例适配
为保证应用在主副屏或者大屏态能保证满屏显示,请尽快确保应用可以支撑较高范围的宽高比,避免后续反复适配,华为建议最高宽高比支持到 2.4 或者更大(可以确保在主屏、辅屏下满屏显示,如果设置的比例小于 2.4 可能因为最终屏幕比例与当前规格存在差异引起应用无法全屏显示),最小宽高比为 1:1(可以确保在展开态大屏下满屏显示)。
最大宽高比申明: maxaspecratio:2.4(2.4 表明在主副屏下满屏显示)
Android 7.1 及以下版本,在 manifest 文件的<application>节点中增加 <meta-data>数据,设置最大支持比例:
复制代码
<meta-data android:name="android.max_aspect" android:value="2.4" />
Android 8.0 及以上版本,在 manifest 文件的 <activity> 节点中增加 android:MaxAspectRatio 属性,声明最大支持比例:
复制代码
< activity android:maxAspectRatio="2.4">
...
</activity>
最小宽高比申明: minaspectratio:1.0 (App | Activity Level )
Q 之前版本:在 manifest 文件的 <application>节点中增加 <meta-data>数据,设置最小支持比例(声明为 1.0 即表示在展开态大屏下满屏显示):
复制代码
< meta-data android:name="android.min_aspect" android:value="1.0" />
Q 版本之后支持:在 manifest 文件的 <activity>节点中增加 android:MinAspectRatio 属性,声明最小支持比例:
复制代码
<activity android:minAspectRatio="1.0">
...
</activity>
切换显示比例应用不重启适配
应用如何自处理 screenSize 事件,确保热切换时不重走生命周期。
在 manifest 文件的 <activity> 节点中的 android:configChanges 属性增加 screenSize|orientation|smallestScreenSize 字符串,当屏幕比例变化时,系统会回调 Activity 的 onConfigurationChanged() 方法,而避免 Activity 重新启动。
复制代码
android:configChanges="screenSize|orientation|smallestScreenSize"
应用复写 onConfigurationChanged() 方法,在方法中实现针对不同比例下界面布局的相应调整,如切换布局、调整控件位置和间距等。
调试
模拟调试
如果开发者没有折叠屏手机,可以通过修改屏幕分辨率来模拟调试:
1. 主屏(折叠)切全屏(展开)模拟方法:
  • 预先将手机设置主屏分辨率:
adb shell wm size 1136x2480
  • 通过修改手机分辨率为全屏分辨率模拟状态切换:
adb shell wm size 2200x2480
2. 全屏(展开)切主屏(折叠)模拟方法:
  • 预先将手机设置全屏分辨率:
adb shell wm size 2200x2480
  • 通过修改手机分辨率为主屏分辨率模拟状态切换:
adb shell wm size 1136x2480
现在华为官网已经上线预约 Mate X 适配真机测试的活动,有兴趣的开发者可通过此链接了解:
https://developer.huawei.com/consumer/cn/activity/709


我知道答案 本帖寻求最佳答案回答被采纳后将获得系统奖励10 天空金币 , 目前已有2人回答

最近访客

来自- 中国江苏南通
天空便利贴:
到底了,觉得文章不错的,可以给作者评论或者打赏,这是创作者向前的动力。可以向上滑,或者转到相关热帖。使用过程中如有好的意见或建议,欢迎联系页面qq客服。天空论坛因你更精彩。
回复

手机扫码浏览
天空论坛,有你有我,明天更好!

主题推荐

    暂无主题推荐
来自- 中国江苏南通
点评回复 来自- 中国江苏南通

使用道具 举报 私信管理员来自- 中国江苏南通

来自- 中国北京

Ta在天空论坛排行

积分:NO. 32 名

发帖:NO. 36 名

在线:NO. 56 名

飞翔de希望 发表于 2019-5-3 08:56:52 | 显示全部楼层 来自- 中国北京
来自- 中国北京
踩一下,嘿嘿嘿嘿
来自- 中国北京
沙发 2019-5-3 08:56:52 回复 收起回复
B Color Smilies
还可输入 2000 个字符
回复
天空论坛,有你有我,明天更好!
来自- 中国北京
点评回复 支持 反对 来自- 中国北京

使用道具 举报 私信管理员来自- 中国北京

来自- 中国湖北十堰

Ta在天空论坛排行

积分:NO. 2 名

发帖:NO. 3 名

在线:NO. 31 名

常务管理员 发表于 2024-3-14 22:30:42 | 显示全部楼层 来自- 中国湖北十堰
来自- 中国湖北十堰
天空论坛,不错。会常来看看。
来自- 中国湖北十堰
板凳 2024-3-14 22:30:42 回复 收起回复
B Color Smilies
还可输入 2000 个字符
回复
天空论坛,有你有我,明天更好!
来自- 中国湖北十堰
点评回复 支持 反对 来自- 中国湖北十堰

使用道具 举报 私信管理员来自- 中国湖北十堰

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

×天空论坛发帖友情提示:
1、注册用户在本论坛发表、转载的任何作品仅代表其个人观点,不代表本论坛认同其观点。
2、如果存在违反国家相关法律、法规、条例的行为,我们有权在不经作者准许的情况下删除其在本论坛所发表的文章。
3、所有网友不要盗用有明确版权要求的作品,转贴请注明来源,否则文责自负。
4、本论坛保护注册用户个人资料,但是在自身原因导致个人资料泄露、丢失、被盗或篡改,本论坛概不负责,也不承担相应法律责任。

QQ|手机版|我们的天空 ( 苏ICP备18048761号 ) |苏公网安备32068202000215号 |网站地图

GMT+8, 2024-5-19 20:11 , Processed in 0.299229 second(s), 70 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表