-1

我最近正在开发一个应用程序并一直在研究。我首先在 4.1.2 API 中编写了我的 android 应用程序,这是 Galaxy S3 的 API。但是今天,因为我犯了一个错误,我重新开始编程。所以我正在研究我应该用什么平台来编程,比如 API 和设备。这样,我就可以完美地适应我的 xml 蓝图的组件的高度和宽度。但我通过研究注意到的一件事是其他程序员在 2.3.3 中编程,即使对于 Galaxy S3,只要 wXh 比率对设备来说是可以的。那么,API 级别真的无所谓吗?所以...我想知道为什么只要 wXh 配给没问题,API 就无关紧要。以及用于 Galaxy S3 应用程序的精细(实际上是完美的)虚拟设备和 API

4

5 回答 5

0

API 级别很重要。您可以为三星 Galaxy S3 使用适用于 Android 4.1 的 API,但程序员使用(如您所说)API 级别 8,因为它与旧设备兼容。http://en.wikipedia.org/wiki/Backward_compatibility

于 2013-05-13T13:29:24.383 回答
0

他们也为 2.3.3 开发以支持旧平台。

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="17" />

这意味着它支持从 2.3.3 到 4.2.2

您可以使用新的 api 并支持旧的。使用这种设置,您必须小心仅在运行新平台时才使用新的 API。

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
    asyncTask.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, params);
} else {
    asyncTask.execute(params);
}

如果您仅支持 Galaxy S3,则可以从 API 16 开始

<uses-sdk
    android:minSdkVersion="16"
    android:targetSdkVersion="17" />
于 2013-05-13T13:30:30.613 回答
0

这不仅仅与设备的高度和宽度有关。Android 布局不是静态的,您不应该为您的应用程序界面提供固定的高度和宽度。相反,您应该使用指定为相对大小的 wrap_content 或 fill_parent 类型的布局,以便它们适合所有设备。

此外,您应该为低、中和高密度屏幕指定布局,以便它可以在大多数设备中正常运行。

现在到 API 版本,作为开发人员,您应该尽量确保最多的人可以使用您的应用程序。您需要确保您的应用程序可以在安装了 2.3.3 版和 ICS 的设备上运行。为了实现这一点,建议您开发目标 2.3.3。

于 2013-05-13T13:31:49.623 回答
0

API 2.3.3 是某种用于向 android 开发的“标准”,因为直到今天(或者直到我上次检查),大约 40% 的 Android 市场仍然使用 2.3.3 版本,如果你使用这个 API 作为开发minSdkVersion(2.3.3 是 10 btw)你占据了大约 96% 的市场(谷歌说)。当越来越多的人升级到 Android 4(ICS 及更高版本)时,这些数字正在发生变化。我相信,如果您的应用程序可以处理

于 2013-05-13T13:34:12.623 回答
0

API 确实很重要,但它与屏幕大小或分辨率无关。它与可以使用的功能有关。

例如,如果您的目标是 android 2.3,那么您的应用程序可以在 2.3 和所有未来版本上运行,但是,如果您使用 2.3 中的新 API 函数,并且您尝试在 2.2 设备上安装您的应用程序,那么调用新的 2.3 函数时,您的应用程序将崩溃,这NoClassDefFoundError意味着您尝试调用的类/函数不存在。

于 2013-05-13T14:25:43.310 回答