来源:快应用论坛
作者:这叫什么事啊
前言
开发者在进行快应用开发的时候,会遇到一些与WEB行为不一致的地方。像素就是其中之一,今天就给大家分享一下相关知识。
前置知识
快应用是一种hybrid开发技术,在渲染上使用的是原生渲染,所以要涉及到一些安卓原生的渲染单位。安卓的渲染单位是dp。
dp是什么概念呢,假设手机你的分辨率为1080x1920,手机的dpr是3。此时打开浏览器进入全屏模式,最多展示 1080 / 3 = 360px的内容,超出则出现滚动条。
这里有一个公式:
手机分辨率w / dpr = 最小宽度x (单位是dp)
使用adb命令可以修改手机分辨率和最小宽度,随之而来的是dpr也跟着动态变化。因此手机的dpr不是固定的,是通过手机分辨率和最小宽度算出来的。
快应用单位
在1050及以前版本的快应用中,可以在manifest.json文件中设置designWidth属性,如果没设置则默认为750。750这个概念跟dp和像素都没有关系,它的意思是,如果当前的设备的最小宽度是 X dp,那么每一个快应用的px单位就是 X / 750 dp,即在快应用中设置一个元素是 10