腾讯优测| 让Android屏幕适配开发更简单-Google百分比布

文/腾讯优测工程师  吴宇焕

腾讯优测优社区干货精选~

相信开发同学都被安卓设备碎片化的问题折磨过,市面上安卓手机的主流屏幕尺寸种类繁多,给适配造成很大的困难。就算搞定了屏幕尺寸问题,各种分辨率又让人眼花缭乱,当你走出了前面所说的两大坑,很有可能又掉进“屏幕长宽比不同”的陷阱。。。

说多了都是泪,我就想做一名安静的开发怎么这么难?

经历过无数次跌跌撞撞,我总结出一些经验,想与大家一起分享。
已知的屏幕适配方法:
(1)按像素比:y/开发时用的屏幕像素=x/用户设备像素
(2)按长度:用dip(假设屏幕尺寸基本不变)
(3)按密度:放在l、m、h文件夹(假设屏幕尺寸基本不变,dpi越大 PX越大)

而Android 5.0 Google官方推出了百分比布局支持库,意在解决大部分屏幕适配的问题。下面我就向大家详细介绍一下:
1、Google百分比布局支持库
(1)支持的布局

(2)支持的属性

(3)使用方法
1、加载android-support-percent-lib
dependencies {
    compile ‘com.android.support:percent:22.2.0‘
}
2、PercentRelativeLayout

3、PercentFrameLayout

实现原理

(1)View绘制过程
整个View树的绘图流程是在ViewRootImpl类的performTraversals()方法中,整个流程的大致流程图如下:

(2)android-support-percent实现过程

根据view的绘制过程,通过阅读百分比布局库源码,绘制流程如下:

今天对于Google百分比布局支持库就先说这么多,后续如果还有新的经验会及时与大家分享。最后说一句,想更有效、更放心的解决Android屏幕适配问题,多多体验腾讯优测,千余款真机等你来测!

感兴趣可以马上加官群勾搭客服妹妹哦~

优测官方群:214483489

时间: 2024-10-07 08:37:44

腾讯优测| 让Android屏幕适配开发更简单-Google百分比布的相关文章

【腾讯优测干货分享】鹅厂专家详解Android N适配要点

Google即将发布的Android7.0的预览版Android_N为我们增加了许多新的特性,其中包括多窗口的支持.通知栏支持直接回复.网络数据节省开关.以及新的DOZE模式等:下面我们就来谈一谈关于这些新功能的适配问题和需要注意的地方. 1.Doze(打盹模式)更加强大 该模式是在Android6.0中引入的,当用户设备未插电源.处于静止状态屏幕关闭时,该模式会推迟CPU和网络活动,从而增加电池寿命. 在Android_N中对这种模式进行了加强,当设备处于充电状态且屏幕已关闭一定时间后,设备会

鹅厂专家详解Android N适配要点 | 腾讯优测干货分享

1.Doze模式更加强大 该模式是在Android6.0中引入的,当用户设备未插电源.处于静止状态屏幕关闭时,该模式会推迟CPU和网络活动,从而增加电池寿命. 在Android_N中对这种模式进行了加强,当设备处于充电状态且屏幕已关闭一定时间后,设备会进入打盹模式并应用第一部分限制:关闭应用网络访问.推迟作业和同步.如果进入打盹模式后设备处于静止状态达到一定时间,系统则会对 PowerManager.WakeLock.AlarmManager 闹铃.GPS 和 Wi-Fi 扫描应用余下的打盹限制

腾讯优测优分享干货精选| Android双卡双待适配——隐藏在数据库中的那些秘密

腾讯优测是专业的app自动化测试平台,除了提供兼容性测试,远程真机租用等多维度的测试服务,还有优分享-腾讯内部的移动研发测试干货精选~ 许多APP都希望获取用户通讯录联系人,利用通讯录关系链信息来丰富产品功能.在读取系统联系人数据库的ContentProvider时,对于双卡双待手机,电话和短信数据都需要标识来自哪张卡. Android 5.0开始加入Dual Sim支持,Android 官方方案和mtk的方案十分类似,感兴趣的小伙伴可以直接移步mtk方案实现方式. 双卡数据库适配流程 根据系统

腾讯优测-优社区干货精选 |安卓适配之Camera拍照时快门咔嚓声

文/腾讯优测研发工程师 吴宇焕 优测小优有话说: android机型适配的坑自然是不少,不想掉坑快来优测优社区~ 现在Android手机一般都会带有照相功能,有很多朋友就发现手机照相时快门声音很响,想关又关不掉.....不过话说回来,静音拍照你想做啥? 来到主题上,因为网络上有很多关于"删除或修改快门声音文件是关闭快门声的方法"的内容,所以我就不赘述了.今天我想和大家说的是:在开发中,针对camera的静音功能我们会遇到哪些机型兼容问题? 从Google官方API中也没有明确的指出关于

【腾讯优测干货分享】Android5.0-6.0双卡适配指南

作者:腾讯优测开发工程师 于长敏 这里仅以获取sim卡的IMSI接口(getSubscriberId)和发短信接口(sendTextMessage)为例来详细讲解一下Android5.0-6.0双卡适配的策略,其他方面的双卡适配方案跟4.4以前相比并无特别大的区别,之前我们已有专家对此进行过详细的总结,这里就不重复说明了. 从Android5.0开始,加入了对双卡的管理: 首先从数据库方面来看,其设计思路跟以前某平台是一样的,加入一个siminfo数据表到telephony.db来管理双卡的信息

腾讯优测-优社区干货精选 | android开发在路上:少去踩坑,多走捷径(下)

文/腾讯公司 陈江峰 优测小优有话说: android开发的坑自然是不少,不想掉坑快来优测优社区~ 6.Android APP开发中其它需要提醒的问题 android4.4在UI线程无法进行网络操作.不单只android API版本不一定导致运行异常,有些机型还使用Java 1.5进行编译,使用某些Java 1.6的函数会Crash的.注意OOM问题,目前android手机已经有3G内存了,但并非一个应用就能使用全部内存.了解一下堆内存,一个软件至少一个进程,一个进程跑一个虚拟机,进程使用的堆内

【腾讯优测干货】Crash率从2.2%降至0.2%,这个团队是怎么做到的?

特约供稿人:腾讯公司天天P图项目 乔伟康.梁小龙 小优有话说: App Crash就像地雷. 你怕它,想当它不存在.无异于让你的用户去探雷,一旦引爆,用户就没了. 你鼓起勇气去扫雷,它却神龙见首不见尾. 你告诫自己一定开发过程中减少crash,少埋点地雷,但总是不得其法. 降低Crash率,需要的是技巧.工具.耐心与时间. 本文由腾讯天天P图测试团队现身说法,为你讲述他们将Crash率直降90%背后的故事,希望能为你"排雷"提供一些思路. PS:以后每周四记得关注这里哦!小优将为你精选

【腾讯优测干货】看腾讯的技术大牛如何将Crash率从2.2%降至0.2%?

小优有话说: App Crash就像地雷. 你怕它,想当它不存在.无异于让你的用户去探雷,一旦引爆,用户就没了. 你鼓起勇气去扫雷,它却神龙见首不见尾. 你告诫自己一定开发过程中减少crash,少埋点地雷,但总是不得其法. 降低Crash率,需要的是技巧.工具.耐心与时间. 本文由腾讯天天P图测试团队现身说法,为你讲述他们将Crash率直降90%背后的故事,希望能为你“排雷”提供一些思路. PS:以后每周四记得关注这里哦!小优将为你精选“干货”,让腾讯的开发&测试大牛们陪你一起为提升产品质量!

腾讯优测优分享 | 探索react native首屏渲染最佳实践

腾讯优测是专业的移动云测试平台,旗下的优分享不定时提供大量移动研发及测试相关的干货~此文主要与以下内容相关,希望对大家有帮助. react native给了我们使用javascript开发原生app的能力,在使用react native完成兴趣部落安卓端发现tab改造后,我们开始对由react native实现的界面进行持续优化.目标只有一个,在享受react native带来的新特性的同时,在体验上无限逼近原生实现.作为一名前端开发,本文会从前端角度,探索react native首屏渲染最佳实