我是 Android 开发的新手。我可以在 Android 中使用使用 JDK 7 开发的现有 Java 代码吗?
这些函数使用 xerces dom 和 xslt 和 xpathapi。目前,当我安装 Android Eclipse ADT 环境时,这些功能没有编译。我还想知道Android设备本身是否支持JRE 6或7?
最初 Android 开发工具仅支持 jdk 6 功能。但这种情况发生了变化,首先在 2013 年 10 月由 Android Studio 0.3.2 看到:http ://tools.android.com/recent/androidstudio032released
支持菱形运算符、multi-catch、try-with-resources、switch 中的字符串等语言功能。创建新项目时,您可以指定源语言级别: 请注意,您可以使用所有这些语言功能,而不仅仅是使用 Android KitKat,但也使用旧版本的 Android!有一个例外:try-with-resources,它需要 minSdkVersion 19。因此,如果您的 minSdkVersion 小于 19,Studio 将在您的代码中标记任何使用 try-with-resources 的情况:
然后在 2014 年 3 月通过 ADT 插件 22.6,请参阅:http: //developer.android.com/tools/sdk/eclipse-adt.html
添加了对 Java 7 语言功能的支持,例如 multi-catch、try-with-resources 和菱形运算符。这些功能需要版本 19 或更高版本的构建工具。Try-with-resources 需要 minSdkVersion 19;其余的新语言功能需要 minSdkVersion 8 或更高版本。要在安装 ADT 22.6.0 后使用新的语言功能,请确保在 JDK 7 上运行 Eclipse,并将应用程序项目设置更改为使用 JDK 7。
Android 并不打算与任何 Java SE API 版本 100% 兼容,既不是 6 也不是 8 也不是任何版本。这就是甲骨文对谷歌提起诉讼的原因,指控谷歌将Java分片。有些 API 无法在 Android 上作为 Swing 实现;想象一下在 android 上有一个带有关闭按钮的窗口!其他被延迟但已实现:例如:Charset 类在 Java SE 1.4 中但在 android API 9 中实现,在 Java 7 中的 AutoClosable 在 Android API 级别 19 中实现以允许实现 try-with-resources 语言功能。一些 API 是存在的,但与控制台的目的不同。
首先,Java JDK 和 JRE 之间存在差异。JRE 是 Java 运行时环境,而 JDK 是 Java 开发工具包。它是您开发 Android 应用程序所需的 JDK 以及现有的 Android SDK。
Android SDK 可以使用 JDK 6 或 7,但是,它只能使用 JDK 6 API。
是的,jdk 7 现在支持 android 从构建工具 19 开始