如果我使用Android 4平台编写应用程序,该应用程序是否可以在Android 2设备上运行?

时间:2012-07-04 01:13:00

标签: android eclipse sdk

我想使用Android SDK和Eclipse编写应用程序。 我使用SDK Manager安装了Android 4平台,但我想知道,这个应用程序是否适用于Android 2设备?还是只有Android 4设备?

感谢。

3 个答案:

答案 0 :(得分:2)

这取决于您进行的系统调用。始终在运行不同版本的设备上进行测试,因为某些调用仅适用于某些API级别。

sdk website上,您可以看到此信息。

(参见"自:API级别9和#34;在getNumberOfCameras fn的灰色条的右侧部分)

答案 1 :(得分:2)

在App Manifest XML文件中,您必须指定Minimum and Desired Target SDK版本。 我正在开发一款针对Android 4.0.3(SDK v15)但仍必须在2.3.3(SDK v10)上运行的应用程序。

<uses-sdk
    android:minSdkVersion="10"
    android:targetSdkVersion="15" />

当然,您只能使用较低的SDK可用功能。 您还应该查看Google支持库,它为旧版SDK提供了一些新功能。 http://developer.android.com/tools/extras/support-library.html

// Marcello

答案 2 :(得分:2)

Android Lint是ADT r16中引入的一个新工具,它可以自动扫描并检查项目中的新API,并在Eclipse编辑器中显示一个很好的错误标记。

检查新API的规则,请参阅here

NewApi
------
Summary: Finds API accesses to APIs that are not supported in all targeted API
versions

Priority: 6 / 10
Severity: Error
Category: Correctness

This check scans through all the Android API calls in the application and
warns about any calls that are not available on *all* versions targeted by
this application (according to its minimum SDK attribute in the manifest).

If your code is *deliberately* accessing newer APIs, and you have ensured
(e.g. with conditional execution) that this code will only ever be called on a
supported platform, then you can annotate your class or method with the
@TargetApi annotation specifying the local minimum SDK to apply, such
as@TargetApi(11), such that this check considers 11 rather than your manifest
file's minimum SDK as the required API level.

在Eclipse中:

enter image description here