安卓app开发规范(安卓app开发规范有哪些)

网站建设 4878
本篇文章给大家谈谈安卓app开发规范,以及安卓app开发规范有哪些对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 android app界面设计规范(dpi,dp,px等) PPI(Pixels per inch):每英寸所拥有的像素数,即像素密度。 DPI(dots per inch):即每英寸上,所能印刷的网点数,一般称为像素密度。ppi计算公式:ppi = 屏幕对角线像素数/屏幕对角线英寸数,通过勾股定理计算屏幕对角线像素数。

本篇文章给大家谈谈安卓app开发规范,以及安卓app开发规范有哪些对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

android app界面设计规范(dpi,dp,px等)

PPI(Pixels per inch):每英寸所拥有的像素数,即像素密度。

DPI(dots per inch):即每英寸上,所能印刷的网点数,一般称为像素密度。ppi计算公式:ppi = 屏幕对角线像素数/屏幕对角线英寸数,通过勾股定理计算屏幕对角线像素数。

Screen Size(屏幕尺寸):手机屏幕尺寸大小,如3英寸、4英寸、4.3英寸、5.7英寸,指的是对角线的长度。

DIP(device independent pixel):即dip/dp,设备独立像素。 1px = 1dp density(由dpi决定)

Resolution(分辨率):指手机屏幕垂直和水平方向上的像素个数。eg分辨率480 800,指该设备垂直方向有800个像素点,水平方向有480个像素点。

px(Pixel像素):相同像素的ui,在不同分辨率的设备上效果不同。在小分辨率设备上会放大导致失真,大分辨率上被缩小。

Android Design里把主流设备的 dpi 归成了四个档次: 120 dpi、160 dpi、240 dpi、320 dpi ,具体见如下表格。

实际开发当中,我们经常需要对这几个尺寸进行相互转换(比如先在某个分辨率下完成设计,然后缩放到其他尺寸微调后输出),一般按照 dpi 之间的比例即 2:1.5:1:0.75 来给界面中的元素来进行尺寸定义。

也就是说如果以 160 dpi 作为基准的话,只要尺寸的 DP 是 4 的公倍数,XHDPI 下乘以 2,HDPI 下乘以 1.5,LDPI 下乘以 0.75 即可满足所有尺寸下都是整数 pixel 。但假设以 240 dpi 作为标准,那需要 DP 是 3 的公倍数,XHDPI 下乘以 1.333,MDPI 下乘以 0.666 ,LDPI 下除以 2。而以 LDPI 和 XHDPI 为基准就更复杂了。同时第一款Android设备(HTC的T-Mobile G1)是属于160dpi的。鉴于以上各种原因, 标准dpi=160

谷歌官方对dp的解释如下:

A virtual pixel unit that you should use when defining UI layout, to express layout dimensions or position in a density-independent way.

The density-independent pixel is equivalent to one physical pixel on a 160 dpi screen, which is the baseline density assumed by the system for a "medium" density screen. At runtime, the system transparently handles any scaling of the dp units, as necessary, based on the actual density of the screen in use. The conversion of dp units to screen pixels is simple: px = dp * (dpi / 160). For example, on a 240 dpi screen, 1 dp equals 1.5 physical pixels. You should always use dp units when defining your application's UI, to ensure proper display of your UI on screens with different densities.

简单来说,以160dpi的设备为准,该设备上1dp = 1px;如果屏幕密度大,1dip代表的px就多,比如在320dpi的屏幕上,1dip=2px(即1dp代表2个像素)。在app开发时,最好用dp来做界面的布局,以保证适配不同屏幕密度的手机。

dp和px的换算公式:

我的理解,该公式表示px的数值等于dp的数值*(设备dpi/160)

注意,px、dp是单位,但density没单位。

applyDimension的源码如下,可参考:

android的尺寸众多,建议使用分辨率为 720x1280 的尺寸设计。这个尺寸 720x1280中显示完美,在 1080x1920 中看起来也比较清晰;切图后的图片文件大小也适中,应用的内存消耗也不会过高。

app启动图标为48*48dp,对应各dpi设备,图像资源像素如下:

| mdpi | hdpi | xhdpi | xxhdpi |

| ---:| ---: | ---:| ---:| ---:|

|48 48px|72 72px|94 96px|144px 144px|

操作栏图标为32*32dp,对应各dpi设备,图像资源像素如下:其中图形区域尺寸是24*24dp,可参考平时ui切图会有部分留白。

| mdpi | hdpi | xhdpi | xxhdpi |

| ---:| ---: | ---:| ---:| ---:|

|32 32px|48 48px|64 64px|96px 96px|

通知栏图标为24*24dp,对应各dpi设备,图标像素如下:

| mdpi | hdpi | xhdpi | xxhdpi |

| ---:| ---: | ---:| ---:| ---:|

|24 24px|36 36px|48 48px|72px 72px|

某些场景需要用到小图标,大小应当是16*16dp,其中图形区域尺寸12*12dp。

| mdpi | hdpi | xhdpi | xxhdpi |

| ---:| ---: | ---:| ---:| ---:|

|16 16px|24 24px|32 32px|48px 48px|

怎么看安卓软件是遵循什么版本规范开发的

如果有一个apk,需要知道他最低安装支持的Android版本是什么,应该如何查看呢?

直接将apk后缀名改为rar或者zip,拉出AndroidManifest.xml?不行,AndroidManifest.xml已经被编译过了,里面很多内容改为二进制了。

其实用Android自带工具即可,进入Android SDK目录。

cd sdk\build-tools\android-4.4.2 这边以4.4.2为例,可以参照自己的platform版本

aapt.exe list -a someapk.apk apkversion.txt

然后用记事本之类的应用打开apkversion.txt搜索

minSdkVersion,以我这边为例,可以看到这便是0xf,即15

E: uses-sdk (line=8)

A: android:minSdkVersion(0x0101020c)=(type 0x10)0xf

如何快速地开发一款 Android App?

作为一名Android开发新手,在学习开发一款自己的app之前,参考一些大牛的项目,进行借鉴与参考是一个很好的捷径。

然而有些新手上手就开始撸代码,看着一脸懵逼的代码,不明所以,想着不管三七二十一,敲着敲着就明白了。结果,最后一出bug就懵逼了,丝毫不理解项目的结构与框架,更不提其中的技术难点。

所以不要盲目地copy,磨刀不误砍柴工,要像看源码一样学习项目。先理清项目中的结构,使用的框架,每个类的功能,以及使用到的技术点,庖丁解牛,逐个拆分学习,化为一个个的技术问题,这样才能最终转化为自己的知识。

针对具体的技术实现,不要仅仅以实现为目的,更不要仅仅因为实现了一些炫酷的UI效果而沾沾自喜。

对于一些技术,要知其然,更要知其所以然。比如:进程间通信的实现方式AIDL,可能照着一些模板就可以实现,达到目的。再比如说:RecyclerView或ListView,按照一定的方法就可以快速实现列表布局。

然而这些实现不仅在一个项目或一处使用,而是频繁高发的实现,将来也更是工作或面试中会遇到的。所以我们要透过表面学习原理,在开发一款app的同时,通过这种方式激励自己加深对技术的理解与实际应用。

比如,针对AIDL理解binder机制的实现,更进一步理解android中的进程间通信方式。针对RecyclerView或ListView,理解复用机制以及如何定制化实现一些特殊的效果,加深我们自己的技术深度。

安卓app开发规范的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于安卓app开发规范有哪些、安卓app开发规范的信息别忘了在本站进行查找喔。

扫码二维码