1

我有两个从指定项目构建的静态库。

ARMv5 / myLib.a
ARMv7 / myLib.a

现在,我想使用这些库并为 ARMv5 和 ARMV7 平台构建两个共享库。

有没有办法指定我想使用我的静态库的两个版本?现在,我在我的 ANT 脚本中做了一个坏把戏,它只包括:

  1. 复制静态 ARMv5 库。
  2. 构建共享库 ( ARMv5 )。
  3. 删除 ARMv5 静态库并复制 ARMv7 版本。
  4. 再次构建一个共享库(ARMv7)。

我知道有

"APP_ABI := armeabi armeabi-v7a" 

但是如何告诉他我想从两个独立的静态库构建,而不仅仅是一个?

问候,

4

1 回答 1

1

可能不是最好的方法,但您可以尝试在 Android.mk 中使用 if else 语句并检查 APP_ABI 值并使用相应的库。

ifeq ($(APP_ABI), armeabi-v7a)
  LOCAL_SRC_FILES := ARMv7/myLib.a
else
  LOCAL_SRC_FILES := ARMv5/myLib.a
endif

或者使用 LOCAL_STATIC_LIBRARIES 以防您直接链接它们。当然,您的 Application.mk 应该包含您所说的行:

APP_ABI := armeabi armeabi-v7a
于 2013-08-12T11:28:12.413 回答