android兼容oppo手机刘海屏解决方案

news/2024/10/30 13:35:18/

引用自OPPO官方文档,这里缩减了一些内容,选取重要内容,包括oppo沉浸式的兼容。
转载请标明出处:
https://blog.csdn.net/DJY1992/article/details/80688802
本文出自:【奥特曼超人的博客】

推荐:

  • android 兼容所有刘海屏的方案大全
  • android 兼容huawei手机刘海屏解决方案
  • android 兼容vivo手机刘海屏解决方案
  • android兼容oppo手机刘海屏解决方案
  • android兼容小米xiaomi刘海屏解决方案
  • android 关于google刘海屏的解决方案

目录:

    • 1.机型
    • 2. 如何识别凹形屏
    • 3. 应用适配布局说明
    • 4. 应用适配内容
    • 5. 常见问题
    • 6. 如何适配全面屏手机
    • 7 兼容OPPO沉浸式

1.机型

OPPO的刘海屏适配文档稍微比较简单点,首先认识一下OPPO推出的一款屏幕高宽比更大、带有刘海的凹形屏幕的手机,其屏幕规格如下:

安卓刘海屏奥特曼超人dujinyang

采用宽度为1080px, 高度为2280px的圆弧显示屏。 屏幕顶部凹形区域不能显示内容,宽度为324px, 高度为80px。

2. 如何识别凹形屏

本次凹形屏规格的机型型号:

  • PAAM00
  • PAAT00
  • PACM00
  • PACT00
  • CPH1831
  • CPH1833

上述机型的屏幕规格完全相同,不需分别做差异化处理,统一适配即可。

如何识别凹形屏:

context.getPackageManager().hasSystemFeature(“com.oppo.feature.screen.heteromorphism”)

返回 true为凹形屏 ,可识别OPPO的手机是否为凹形屏。

3. 应用适配布局说明

您在设计应用界面布局时,请确保布局填满屏幕,并且内容无论横屏或竖屏显示都不会被屏幕凹形槽遮蔽。

应用横屏全屏显示
奥特曼超人刘海屏米奇云

应用竖屏全屏显示
奥特曼超人刘海屏米奇云

4. 应用适配内容

应用完整的全面屏显示,将为用户带来极致的全屏效果体验,增强应用的用户粘性。

适配具体内容:

  1. 声明全屏显示(具体方法见附录)。
  2. 适配沉浸式状态栏,避免状态栏部分显示应用具体内容。
  3. 如果应用可横排显示,避免应用两侧的重要内容被遮挡。

    应用横屏全屏显示
    奥特曼超人dujinyang
    应用竖屏全屏显示
    android刘海屏oppo

5. 常见问题

1)PPT中介绍的凹形屏的规格是否固定的?以后其他机型是否会有变化?

公告针对上述机型手机,不针对后续机型。后续机型凹型屏的大小、尺寸、位置可能变化。

2)凹型屏是否有统一处理逻辑?

目前在设置 – 显示 – 应用全屏显示 – 凹形区域显示控制,里面有关闭凹形区域开关,用户可通过这个关闭凹形区域避免遮挡(原则可参考google android P 设计说明)。

3)后续是否会兼容Android P?

Google Android P 会有标准的API获取凹形屏,后续会按照标准API提供适配方案,并兼容老方案。

6. 如何适配全面屏手机

根据谷歌兼容性(CTS)标准要求,应用必须按以下方式中的任意一种,在AndroidManifest.xml中配置方可全屏显示,否则将以非全屏显示。

方式一:配置支持最大高宽比

* <meta-data android:name="android.max_aspect"  android:value="ratio_float" />* android:maxAspectRatio="ratio_float"   (API LEVEL 26

说明:以上两种接口可以二选一.

ratio_float = 屏幕高 / 屏幕宽 

(如oppo新机型屏幕分辨率为2280 x 1080, ratio_float = 2280 / 1080 = 2.11,建议设置 ratio_float为2.2或者更大)

方式二:支持分屏,注意验证分屏下界面兼容性

android:resizeableActivity=”true”

建议采用方式二适配支持全面屏。

详见官方文档:https://source.android.google.cn/compatibility/cdd?hl=zh-cn


7 兼容OPPO沉浸式

这里介绍通过设置窗口全屏Flag实现OPPO机型状态栏沉浸式方法:

Android5.0 以后的版本

Window window = activity.getWindow();
View decorView = window.getDecorView();
decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
|View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.setStatusBarColor(Color.TRANSPARENT);

Android4.4 及以前的版本设置方法:

Window window = activity.getWindow();
WindowManager.LayoutParams attributes = window.getAttributes();
attributes.flags |= WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS;
window.setAttributes(attributes);

http://www.ppmy.cn/news/203965.html

相关文章

利用ADB命令强制卸载oppo自带浏览器

前言 oppo手机是自带oppo浏览器的&#xff0c;这个自带的浏览器带有oppo推荐的负面新闻很多&#xff0c;而且有时也自动推送一些消息给用户&#xff0c;页面不够简洁&#xff0c;打开浏览器负面内容比较多&#xff0c;然后我想卸载发现被系统做了限制&#xff0c;不能卸载&…

oppo手机解锁_oppo手机密码解锁大全【图文】

Oppo手机大家应该都知道吧!oppo手机最近几年非常地火爆,尤其是今年oppor9多次卖到断货,这是以往任何一个手机品牌所不能比的,即使是 小米 的饥饿营销也不过如此。Oppo手机之所以这么出名与它的广告宣传力度是离不开的,其实它的配置与同价位的手机相比并不占优势,不过它的安…

Cocos Creator SDK接入OPPO篇

官方文档入口&#xff1a;http://docs.cocos.com/creator/manual/zh/publish/publish-oppo-instant-games.html OPPO文档入口&#xff1a;https://cdofs.oppomobile.com/cdo-activity/static/201810/26/quickgame/documentation/#/games/quickgame 其实oppo的sdk是可以完全可…

oppo android版本升级失败,oppo怎么刷机以及刷机失败的原因

Oppo手机大家了解吗?以前很多人只是对oppo手机只是简单的听说而已,今年oppo手机非常地火爆,尤其是oppor9这款手机,销量非常地好。Oppo手机之所以这样可能与其过硬的配置和精美的外观有关系,再加上它大力的宣传使该品牌的手机让众人知晓。Oppo手机仅供用户的反馈还是挺不错…

OPPO跨越 “挑战者深渊”

“报复性增长”红利以及全球市场由4G向5G迁移&#xff0c;并没有给存量手机产业带来明显的改善&#xff0c;相反&#xff0c;全球半导体短缺之下&#xff0c;行业内卷之势愈加明显。 而中国手机厂商正在加大对硬科技的投入。这其中&#xff0c;OPPO展现出了行业里少有的前瞻性…

oppo r11s鸿蒙固件,OPPO R11s刷机包

OPPO R11s Plus官方固件rom刷机包是针对OPPO用户的一款刷机包&#xff0c;OPPO R11s已经全面上市了&#xff0c;很多人都买到了这款机器&#xff0c;小编为大家带来的这款刷机包能够帮你更好的使用这款手机。 官方推出的刷机包 OPPO R11s Plus介绍 10月22日晚间OPPO R11s点亮北…

深度测试oppo软件,OPPO深度测试app

OPPO深度测试app是一款最近比较火热的OPPO手机深度测试工具&#xff0c;可以对手机性能和参数进行全方位测试&#xff0c;下载后点击通过测试即可解锁获取TOOT权限&#xff0c;重启出厂后即可愉快开启无限制装机&#xff0c;感兴趣的朋友快来下载吧。 OPPO深度测试app特色 1、手…

Oppo Push

Oppo Push、目前OPPO覆盖3.5亿活跃设备、AppKey、AppSecret(客户端的身份标识) 1. Oppo Push 特点(马上集成看第2节) 提供Web平台与API两种推送方式,可快速集成SDK,有效提高留存率。支持长文字、大图等富文本通知栏消息样式推送服务目前只支持通知栏信息ColorOS3.1至5.0版本…