10

我正在为 Android SDK 2.3.3 编写一个 Android 应用程序,但后来我被要求在运行 Android 2.2.1 的设备上对其进行测试。所以我将目标设置为 8 而不是 10。但是 java.util.concurrent.TimeUnit 只有 Java 1.5 功能集,而不是 java.util.concurrent.TimeUnit 的 Java 1.6/1.7 功能集。因此,我将 TimeUnit 的 openjdk 6 实现放入我的 Android 应用程序包中,一切正常。

有谁知道我在哪里可以获得一些文档,这些文档给了我一个图表,告诉我,例如,当使用官方 SDK 时,Android 2.2 必须使用 Java 1.5 关键字/语法/API 进行编码,Android 2.3.3 可以编码使用 Java 1.6 关键字/语法/API 等...?

4

1 回答 1

6

您正试图将 Android 视为 Java 的一个子集,而事实并非如此。它们是完全分开的。尽管 Android 来自 Java,但它与 Java 相差甚远,两者之间不再存在“版本方面”的相关性。

您可以查看的是 Android 文档。对于每条指令/命令/方法/属性,在右上角,您会找到可以访问所述属性的 api 级别。

单击 api 级别将带您进入一个页面,该页面包含一个将 api 级别转换为 Android 版本的表格。

确定是否允许使用属性的简单方法是使用 eclipse 并执行您刚才所做的操作:更改目标 api 级别。然后,任何对您不可用的方法或属性的调用都会产生致命错误。

于 2012-05-17T14:57:02.193 回答