选择SDK版本以达到最大人数

时间:2016-07-29 17:16:30

标签: android eclipse sdk

我是Android开发的完全初学者,只是下载了Android SDK以将其与Eclipse集成。

但是,我不知道我应该在SDK Manager中选择哪个Android版本,以允许最多人下载和使用我的应用。

以下是我的屏幕上显示的经理的屏幕截图。

SDK Manager window

任何形式的帮助都会非常感激。 感谢。

1 个答案:

答案 0 :(得分:4)

事实上,您不需要下载OLD SDK只是为了让OLD设备能够使用您的应用。

这是通过目标SDK版本和最低API级别(AndroidManifest.xml或build.gradle)在项目设置中完成的。

定义受众群体

首先,为您的应用定义受众群体。

HERE您可以找到每个Android版本的市场份额(这可能会针对每个国家/地区进行更改,但可能有所帮助)。

如果您检查该表,则可以看到只有少数设备仍在使用API​​ 15或更早版本。

enter image description here

因此,如果您支持API< 15,那么您的人数将增加约3%。如果您可以支持它们而不丢失任何功能,那么(不是所有版本都支持/移植所有Android功能)。但是,如果您可能需要禁用某项功能(例如您创建的特殊浮动操作按钮)才能访问这些设备,我认为这不值得。

因此,根据该表,您可以定义受众群体

就我而言,我喜欢使用API​​从API_16到API_24为设备构建应用。

通常,我们总是希望使用最大的API。今天,24。

通过这种方式,我可以使用Android达到约97%的人。

但这是可选的......我可以选择min API为13 ...或14 ..或4 ..这取决于你..

定义观众后

目标SDK

我通常根据我想支持的MAX API设置目标API。因此,例如,如果我想支持的MAX API是API_24,那么这将是我的目标API,并将下载SDK v24(7.0)。

通常,您总是会安装最新的SDK,因为您总是希望获得最新的Android版本并享受所有新功能。

MIN API

现在,您还定义了要支持的最小API版本。因此,让我们以API 16为例(第一个JB版本)。

您将在项目文件(AndroidManifest.xml)中设置此项。因此,您不需要下载SDK 16.

设置Eclipse

正如我所说,min SDK将在您的项目中设置。这将在你的Android Manifest中完成

在这里,你可以看到targetSdk是24.这意味着我只需要下载SDK v24来构建这个项目。即使这样,我也可以在API 16或更高版本的设备中安装此应用程序。

Eclipse(AndroidManifest.xml)

<manifest>
    ....
    <uses-sdk
        android:minSdkVersion="16"
        android:targetSdkVersion="24" />
    ...
</manifest>

Android Studio(build.gradle)

compileSdkVersion 24
buildToolsVersion "24.0.0"

minSdkVersion "16"
targetSdkVersion "24"

minSdkVersion无法保证您的应用能够正常运作

请注意,上述设置仅允许您的应用在API&gt; = 16或API&lt; = 24的设备中运行。但是,您的应用可能会崩溃或无法在该范围内的所有设备中运行。这通常是因为根据API版本添加或删除了某些View组件或方法。

例如,仅在API11上添加了Fragment。因此,如果您尝试在具有APIv11的手机中安装您的应用,它将会起作用。但是,如果您将其安装在带有API4的设备中,它将会崩溃。

另一个例子是方法Fragment.onAttach(Context context),它仅在API 23中添加。

这就是我们使用支持库的原因

支持设计库这是一个由Google创建的库,使开发人员能够使用旧Android版本中新Android版本的功能。

因此,例如,要添加与API <11的设备兼容的Fragment,您应该从包Fragment导入并使用android.support.v4.app.Fragment类,而不是SDK中包含的默认版本({{ 1}})。

这样,您的应用就不会崩溃。

当然这是一个非常基本的例子。这只是为了说明......

无论如何,我希望我能帮助你 问候