ReactNative全面屏(Android)适配问题

简介: ReactNative全面屏(Android)适配问题

现在是全面屏的时代,Android手机现在也是各种全面屏,“刘海屏”,“弹出摄像头”,"水滴屏",“挖孔屏”,伴随着科技的飞速发展,各种提高屏占比的方案也是层出不穷,有点“百花齐放百家争鸣”的感觉,哈哈。但是对于开发者来说,Android的屏幕适配就是一个富有挑战性的工作了。


为了呈现更好的视觉效果,许多安卓OEM厂商都开始采用超大屏幕。三星刚刚发布了自己的新旗舰Samsung Galaxy S8,长宽比达到18.5:9。今年早些时候的全球移动大会上LG也亮相了 LG G6,屏幕长宽比达到了18:9。

微信图片_20220609193335.png

(左图)18.5:9 设备上最大纵横比设置为 16:9 的应用(上下有黑边)


(右图)18.5:9 设备上最大纵横比设置为 18.5:9 的应用


  • 如果您的应用定位到 Android 8.0(API 级别 26)或更高版本,它会根据其布局填充整个屏幕。
  • 如果您的应用定位到Android 7.1(API 级别 25)或更低版本,则系统会将应用界面的大小限制为长宽比为 16:9(约为 1.86)的窗口。
    如果应用在具有较大屏幕长宽比的设备上运行,则该应用会在带黑边的 16:9 窗口中显示,从而使部分屏幕处于未占用状态。


为了支持尽可能多的设备,应用应动态调整其布局,以确保其内容和控件可见且结构清晰。


针对此问题,Android官方提供了适配方案,可以提高App支持的最大屏幕长宽比,在 AndroidManifest.xml 中做如下配置即可:

<meta-data android:name="android.max_aspect" android:value="2.1" />

可参考Android官方的支持文档:声明受限屏幕支持

支持刘海屏

开发之路漫漫其修远兮,吾将上下而求索!

目录
相关文章
|
2月前
|
前端开发 Java 编译器
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
112 36
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
|
7月前
|
调度 Android开发 UED
Android经典实战之Android 14前台服务适配
本文介绍了在Android 14中适配前台服务的关键步骤与最佳实践,包括指定服务类型、请求权限、优化用户体验及使用WorkManager等。通过遵循这些指南,确保应用在新系统上顺畅运行并提升用户体验。
429 6
|
8月前
|
安全 Java Android开发
Android 14适配Google play截止时间临近,适配注意点和经验
本文介绍了Android 14带来的关键更新,包括性能优化、定制化体验、多语言支持、多媒体与图形增强等功能。此外,还强调了适配时的重要事项,如targetSdkVersion升级、前台服务类型声明、蓝牙权限变更等,以及安全性与用户体验方面的改进。开发者需按官方指南更新应用,以充分利用新特性并确保兼容性和安全性。
466 0
|
9月前
|
IDE API Android开发
安卓与iOS开发环境的差异及适配策略
在移动应用开发的广阔舞台上,Android和iOS两大操作系统各据一方,各自拥有独特的开发环境和工具集。本文旨在深入探讨这两个平台在开发环境上的关键差异,并提供有效的适配策略,帮助开发者优化跨平台开发流程。通过比较Android的Java/Kotlin和iOS的Swift/Objective-C语言特性、IDE的选择、以及API和系统服务的访问方式,本文揭示了两个操作系统在开发实践中的主要分歧点,并提出了一套实用的适配方法,以期为移动开发者提供指导和启示。
|
9月前
|
Dart Android开发 Windows
Flutter和Native 通信 android端
Flutter和Native 通信 android端
|
10月前
|
JavaScript 前端开发 Android开发
kotlin安卓在Jetpack Compose 框架下使用webview , 网页中的JavaScript代码如何与native交互
在Jetpack Compose中使用Kotlin创建Webview组件,设置JavaScript交互:`@Composable`函数`ComposableWebView`加载网页并启用JavaScript。通过`addJavascriptInterface`添加`WebAppInterface`类,允许JavaScript调用Android方法如播放音频。当页面加载完成时,执行`onWebViewReady`回调。
|
11月前
|
Android开发
Android RIL 动态切换 4G 模块适配
Android RIL 动态切换 4G 模块适配
298 0
|
11月前
|
编解码 人工智能 测试技术
安卓适配性策略:确保应用在不同设备上的兼容性
【4月更文挑战第13天】本文探讨了提升安卓应用兼容性的策略,包括理解平台碎片化、设计响应式UI(使用dp单位,考虑横竖屏)、利用Android SDK的兼容工具(支持库、资源限定符)、编写兼容性代码(运行时权限、设备特性检查)以及优化性能以适应低端设备。适配性是安卓开发的关键,通过这些方法可确保应用在多样化设备上提供一致体验。未来,自动化测试和AI将助力应对设备碎片化挑战。
1038 4
|
11月前
|
Android开发
Android保存图片到相册(适配android 10以下及以上)
Android保存图片到相册(适配android 10以下及以上)
215 1
|
11月前
|
Android开发
Android Uri转File方法(适配android 10以上版本及android 10以下版本)
Android Uri转File方法(适配android 10以上版本及android 10以下版本)
899 0

热门文章

最新文章