一、兼容不同屏幕
有4种普遍尺寸(screenSize):小(small),普通(normal),大(large),超大(xlarge)
4种普遍分辨率:低精度(ldpi), 中精度(mdpi), 高精度(hdpi), 超高精度(xhdpi)
声明针对不同屏幕所用的layout和bitmap,必须把这些可选资源放置在独立的目录中,以下类似。
同样要注意屏幕的方向(横向或纵向)也是一种需要考虑的屏幕尺寸变化
创建不同的layout
目录以 -<screenSize> L为后缀命名
为适配横向屏幕的layout:
如果想给横屏提供一个特殊的layout,也适配于大屏幕,那么则需要使用large和land修饰符。
Note:Android 3.2及以上版本支持定义屏幕尺寸的高级方法,Designing for Multiple Screens。
创建不同的bitmap
我们应该为4种普遍分辨率:低,中,高,超高精度,都提供相适配的bitmap资源。这能使我们的app在所有屏幕分辨率中都能有良好的画质和效果。
要生成这些图像,应该从原始的矢量图像资源着手,然后根据下列尺寸比例,生成各种密度下的图像。
然后,将这些文件放入相应的drawable资源目录中:
Note:低密度(ldpi)资源是非必要的,当提供了hdpi的图像,系统会把hdpi的图像按比例缩小一半,去适配ldpi的屏幕。
二、适配不同的语言
创建区域设置目录及字符串文件
系统会自动调用,正常使用即可。
三、适配不同的系统版本
一般情况下,在更新app至最新Android版本时,最好先保证新版的app可以支持90%的设备使用。
指定最小和目标API级别
同样可以在gradle里面设置:
运行时检查系统版本:
源地址:http://wiki.jikexueyuan.com/project/android-training-geek/supporting-devices-index.html