Android 屏幕适配中的像素密度,UI长度单位的概念及其区别

Android的屏幕有大有小,手机上运行的应用就需要适配这些大小不一的屏幕。而在适配时标记UI大小我们用到Android里的衡量单位有dp,px,sp,in,pt,mm。

in表示英寸,是屏幕的物理尺寸,没英寸等于2.54厘米。我们形容手机,电视的尺寸,如5.9英寸,6英寸,50英寸指的是屏幕(可视区域)对角线的长度。

mm表示毫米,是屏幕的物理尺寸。

pt:表示一个点,是屏幕的物理尺寸。大小为1英寸的1/72。

px即pixel表示屏幕的实际像素,1px即一个像素点。屏幕尺寸有大小,屏幕里的像素点由屏幕分辨率来决定,比如分辨率1920X1080就表示这个屏幕横向的像素点有1920个,纵向的像素点有1080个。

dpi即dots per inch,系统里对应的是density的值。对角线每英寸的像素点个数。它的计算公式如下:

(√(height^2+width^2))÷ size

比如height和width即为长宽的像素,平方和即为对角线的像素个数,size即我们常说的5寸手机、6寸手机中的5和6,即对角线的长度。 所以,一样是5寸的手机,分辨率越高,dpi越高。分辨率相同,屏幕对角线英寸数越小,dpi越高。

dp又叫dip,虚拟像素,是device independent pixels。设备不依赖像素的一个单位。在不同的像素密度(density)的设备上会自动适配。

sp与dp类似,缩放独立的像素,主要处理字体。sp 缩放系数取决于用户设置,系统 会像处理 dp一样缩放大小。

在开发应用程序的时候,我们需要给UI布局标上长度,长度值有px,dp,sp但是实际显示效果如何却跟系统设置的像素密度density(dpi)的值有关。在运行时,系统根据使用中屏幕的实际密度按需要以透明方式处理dp 单位的任何缩放。 dp 单位转换为屏幕像素很简单: px = dp * (dpi / 160) 。 例如,在240 dpi 屏幕上,1 dp 等于1.5 物理像素。在160 dpi屏幕上,1px=1dp=1sp。 在定义应用的UI 时应始终使用dp 单位,以确保在不同密度的屏幕上正常显示UI。而在标记字体大小时应使用sp单位,会根据用户偏好设定的系统字体而选择合适缩放比例,dp单位则不会。

 

refrustrate

Android CTS是Google的平台兼容性测试。很多厂商如需推出正式的基于Android系统的设备,需要通过CTS的认证。本文将基于以下几个方面讲一下如何通过CTS的认证。

1、CTS是什么,有什么作用,为什么需要过CTS。

2、CTS环境搭建与测试设置及流程。

3、输出测试结果,利用Python脚本整理Fail项。

4、Fail项的分析解决。

创建个人站点与博客(Linux)

1、通过云服务提供商购买一台虚拟服务器,国内有阿里,腾讯等,国外有vultr,亚马逊等,我用的是vultr,每月5美元,能做个人站点还能实现vpn翻墙,
配置shadowsocks service后速度很快连接很稳定,客户端还能支持各个平台使用。
shadowsocks service配置:
1)安装python
Ex:apt-get install python3
2)安装python-pip
Ex: apt-get install python-pip
3) 通过pip安装shadowsocks server python版。
Ex:pip install shadowsocks
若提示pip版本不对,可执行:pip install –upgrade pip
若提示main cannot import,需修改pip文件
若提示setuptools找不到,可执行:

wget /bootstrap.pypa.io/ez_setup.py -O – | sudo python2.7

(据python版本不同输入对应的)
4)新建shadowsocks.josn配置服务端ip,端口号,登录密码,加密方式,利用supervisor保持它在后台常驻。
Ex:apt-get install supervisor

2、下载ssh登录工具如xshell,scureCRT,putty等,登录进服务器中,安装Apache,php,mysql。

Ex:
apt install apache2
apt install php
apt-get install libapache2-mod-php
apt-get install mysql-server
apt-get install mysql-client
解决linux环境下mysql找不到php的extension-mysql扩展问题:apt-get install php-mysql
3、在腾讯,阿里那里购买一个域名,认证备案后,在域名解析那里绑定自己的服务器ip,通过浏览器输入域名查看是否能解析成功。
4、通过wordpress搭建个人博客。
wordpress下载地址:/wordpress.org/download/
使用mysql创建一个数据库备用。
下载后解压到/var/www下后,配置wp-config.php,将mysql建好的数据库配置进去。通过浏览器运行对应的install.php,把install.php的路径通过浏览器输入即可。

总结:获取一个公网固定ip地址,安装Web服务Apache后,即可通过浏览器输入固定ip地址来访问默认网页/var/www/index.html,相当于一个简单网站,但是不能每次通过
IP来访问,难记,而且以后ip地址也可能会变,此时可以注册一个固定域名,来绑定我们的ip,好记,ip变更也不会影响到用户与流量。在服务器端,安装Apache后,一般
的html文件可以支持,但是现在大多数网友都是由php编写,因此还需要支持php的解析,安装php并将其余Apache关联起来。一个完整的网站必须要数据库保存用户数据,
轻量级的mysql可以满足我们的需求,安装mysql并将其与php关联。如此,Apache提供web服务,php用以显示网页界面,网页上需保存的数据又通过php存入mysql。

参考:

chromoplastid

/blog.csdn.net/u011107831/article/details/44979519

/blog.csdn.net/liangzi4454/article/details/47003191

/www.cnblogs.com/x_wukong/p/5582559.html

/blog.csdn.net/lcg0412/article/details/45009113