使用 NDK r10e 使用 asset_manager 构建静态库
Build static library with asset_manager using NDK r10e
我正在构建一个在 C++ 中使用 AAssetManager
(#include <android/asset_manager.h>
) 的静态库,然后我将使用 java.
中的库
问题是我不能包含 libandroid
因为我在构建静态库时不能使用 LOCAL_LDLIBS += -landroid
。(静态库总是忽略 local_ldlibs
)
那么如何在不使用 local_ldlibs
的情况下构建我的静态库?
当你构建静态库时,你不需要满足外部引用,但如果有人使用你的库,他们必须link libandroid.so
。您可以将其放入图书馆的文档中。
如果你提供Android.mk,你可以设置LOCAL_EXPORT_LDLIBS = -landroid
。顺便说一句,您还可以将 LOCAL_EXPORT_INCLUDES
设置为带有 public headers 的目录。
无论如何,NDK 10 已经过时了。我强烈建议移动到当前版本(除非你迫切需要对 android-3 的支持)。
我正在构建一个在 C++ 中使用 AAssetManager
(#include <android/asset_manager.h>
) 的静态库,然后我将使用 java.
问题是我不能包含 libandroid
因为我在构建静态库时不能使用 LOCAL_LDLIBS += -landroid
。(静态库总是忽略 local_ldlibs
)
那么如何在不使用 local_ldlibs
的情况下构建我的静态库?
当你构建静态库时,你不需要满足外部引用,但如果有人使用你的库,他们必须link libandroid.so
。您可以将其放入图书馆的文档中。
如果你提供Android.mk,你可以设置LOCAL_EXPORT_LDLIBS = -landroid
。顺便说一句,您还可以将 LOCAL_EXPORT_INCLUDES
设置为带有 public headers 的目录。
无论如何,NDK 10 已经过时了。我强烈建议移动到当前版本(除非你迫切需要对 android-3 的支持)。