ITGSA | 导航条适配公告链接
https://mp.weixin.qq.com/s/qNlYQFKY8v2sPwYJS-tFLA
这个需要怎么优化
尊敬的开发者,您好!
顺应 AI 时代的发展趋势,系统底部导航条特性应运而生。该特性具备三大价值:智慧化功能入口、便捷的交互方式、提升视觉简洁性。金标联盟理事长成员(荣耀 | OPPO | vivo | 小米)现邀请您了解并参与"谷歌Android导航条适配"共建,烦请帮忙评估是否有意愿,以及具体的适配计划。感谢!
导航条几乎覆盖所有 APP 界面包括高频交互场景(如直播页、评论页、转发页、搜索页、菜单页、对话框页等)。随着越来越多终端设备默认开启系统导航条,当前导航条 UI 背景色与 APP 界面存在的反差与割裂感,已影响海量,并容易让用户产生 APP 与系统界面不够精致的负面印象。
谷歌在 Android 系统的持续演进中,也已着重强调边缘到边缘(Edge-to-Edge)显示与窗口 insets 适配的规范,为整个生态的健康发展设定了明确方向。(参阅谷歌原文:https://developer.android.com/develop/ui/views/layout/edge-to-edge?hl=zh-cn)。
为应对上述挑战,金标联盟牵头推进采用谷歌"统一导航条适配规范",根据安卓版本分为两种情况:
2.1. 针对安卓版本号大于等于15,谷歌Android 统一导航条适配规范如下:
导航条沉浸式适配指导文档:https://developer.android.com/codelabs/edge-to-edge?hl=zh-cn#5
通过 Jetpack Libraries 实现沉浸式的参考代码文档:https://developer.android.com/reference/androidx/activity/ComponentActivity#(androidx.activity.ComponentActivity).enableEdgeToEdge(androidx.activity.SystemBarStyle,androidx.activity.SystemBarStyle)
2.2. 针对安卓版本号小于15,谷歌Android 统一导航条适配规范如下:
第一步:应用界面布局到导航栏、状态栏
https://developer.android.com/reference/android/view/Window#setDecorFitsSystemWindows(boolean)
第二步:将导航栏、状态栏背景设置为透明
https://developer.android.com/reference/android/view/Window#setAttributes(android.view.WindowManager.LayoutParams)
https://developer.android.com/reference/android/view/Window#setStatusBarColor(int)
第三步:应用内容view避让导航栏、状态栏
https://developer.android.com/reference/android/view/View#setPadding(int,%20int,%20int,%20int)
为保障适配工作有序推进,使适配成果尽早惠及用户,请各位开发者务必在2026年10月31日前完成安卓导航条适配。届时,针对还未适配的APP,金标联盟理事长成员(荣耀 | OPPO | vivo | 小米)四家将在应用市场进行打标处理,向用户进行风险提示等措施。
我们期待与您携手,共同提升应用品质,打造更精致的移动生态。感谢您的支持与贡献!
1 个回复
Ask小助手 - Ask社区AI助手
针对ITGSA发布的安卓导航条适配公告(即Edge-to-Edge边缘到边缘显示与窗口insets适配规范),在uni-app中可以通过以下几个方面进行优化和适配:
升级HBuilderX版本
针对Android 15及以上系统强制启用edge-to-edge导致页面底部被系统导航栏遮挡的问题,建议将HBuilderX升级至4.75及以上版本,该版本已对系统导航栏遮挡问题进行了适配。详情可参考社区讨论:Android 15 以上,wgt 小程序底部被系统导航栏遮盖
配置系统导航栏颜色
为了解决应用启动时底部闪白或系统导航条UI背景色与APP界面存在反差割裂感的问题,可以在
manifest.json的"app-plus" -> "distribute" -> "splashscreen"节点下配置androidNavigationBarColor,自定义系统底部导航栏颜色,使其与应用背景色保持一致。详情可参考:HBuilder X 504 正式打包后 底部导航 出现颜色处理安全区域避让
在进行沉浸式或边缘到边缘适配后,页面内容会延伸至系统导航条区域。需要通过
uni.getSystemInfoSync()获取设备的安全区域信息(safeArea、statusBarHeight、screenHeight),计算出底部需要留白的高度(screenHeight - safeArea.bottom),并在页面底部布局中动态添加相应的padding,防止重要交互按钮被系统导航条遮挡。系统导航栏显隐控制
如果在特定高频交互场景(如直播页、视频播放页)需要完全隐藏系统导航栏以提供更沉浸的体验,可以使用5+ API进行控制:
plus.navigator.hideSystemNavigation():隐藏系统虚拟按键(导航栏)。仅在支持系统虚拟按键设备上生效,并且应用必须设置为沉浸式状态栏样式。plus.navigator.showSystemNavigation():显示系统虚拟按键(导航栏)。详情可参考:hideSystemNavigation
uni-app x 项目专属配置
如果您使用的是uni-app x框架,在
pages.json中支持更丰富的系统导航栏配置。自HBuilderX 4.61版本起,支持通过androidThreeButtonNavigationStyle配置系统虚拟导航栏前景色,并可通过androidThreeButtonNavigationTranslucent等属性控制虚拟按键区域的沉浸式表现。详情可参考:4.61版本更新说明要回复问题请先登录或注册
公告
更多>相关问题