1.3 目标平台版本

为了跟上新技术的步伐,Android平台经常发布新的版本,这意味着开发者可以在应用程序中使用最新的特性。但是,这也存在一个显而易见的缺点:只有最新的设备才能在这个平台上运行,而这些设备只占市场份额的一小部分。图1-1展示了从Android官方网站上获取的图表。

图1-1

如你所见,绝大多数的Android设备仍在旧平台上运行。幸运的是,在Android平台上,通过使用支持库和设置最低SDK版本,我们可以同时适配旧设备和使用最新的平台版本特性。

首先要确定的就是目标平台。虽然这个决定在以后可以更改,但是尽早确定要包含的特性以及如何在旧设备上适配它们,可以大大简化整体任务。

要了解如何完成上述操作,请先新建一个Android Studio项目,命名随意。选择Phone and Tablet(手机和平板计算机)作为形状因子,选择API 16作为最低SDK。

从模板列表中,选择Empty Activity(空活动)并保留其他内容,如图1-2所示。

图1-2

Android Studio将自动选择可用的最高SDK版本作为目标版本。从项目面板中打开build.gradle(Module: app)文件,在该文件中的defaultConfig部分可以看到应用的版本。defaultConfig部分的代码如下所示。

    defaultConfig {
        applicationId "com.example.kyle.factoryexample"
        minSdkVersion 16
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
    }

以上代码可以确保项目在此API版本区间正确地编译。但是如果要构建准备发行的应用程序,则需要告知Google Play商店,该应用程序可以在哪些设备上使用。这可以通过配置build.gradle文件中的模块实现,如下所示。

    minSdkVersion 21
    targetSdkVersion 24

AndroidManifest.xml文件同样需要编辑。如下所示,需要在manifest节点下添加uses-sdk元素。

    <uses-sdk
        android:minSdkVersion="16"
        android:targetSdkVersion="25" />

确定了目标平台版本的范围后,便可以继续学习如何使用支持库。支持库让我们能够在旧设备上集成许多新特性。