1

在发布我的问题之前。我看了这个堆栈溢出。想知道,这真的不可能吗?我有使用兼容性库 v4 在 android 2.2 中开发的应用程序。这也与 android 3.0 设备兼容。如果设备是 android 2.x,我希望我的应用程序使用 android 兼容性库 v4,如果设备是 android 3.x,我希望我的应用程序使用本机库。有什么建议吗??

提前致谢

4

1 回答 1

1

我还没有尝试过我推荐的方法,但它可以工作:

  1. 将构建目标设置为 Honeycomb
  2. 使用 if-else 语句和构建信息来确定您使用的 Android 版本
  3. 如果您低于 3.0,请在代码中使用兼容性库
  4. 如果您使用的是 3.0 或更高版本,请使用本机库。

为此,您需要在代码中使用完全限定名称,而不是在顶部使用 import 语句。因此,对于 3.0 及更高版本的 Fragments,您将使用:

android.app.Fragment fragment;

代替:

Fragment fragment;

和顶部的导入声明。最后,对于 3.0 之前的版本,您需要以下语句:

android.support.v4.app.Fragment fragment;

您需要使用这些名称,因为您不能同时导入两个版本而只使用一个。

于 2012-08-26T07:30:13.403 回答