Android Studio 2.2 giới thiệu hệ thống xây dựng bên ngoài cmake. Vấn đề là tài liệu thực sự thiếu và tôi không biết làm thế nào tôi nên liên kết các thư viện của bên thứ ba? Tôi đã thử target_link_libraries chỉ cmake:Làm cách nào để bạn liên kết thư viện của bên thứ ba trong hệ thống xây dựng bên ngoài Android cmake?
target_link_libraries(native-lib libs/libSomething.so)
Và nó là "tác phẩm" trong đó biên dịch ứng dụng nhưng sau đó tôi nhận được lỗi dlopen khi chạy vì libSomething.so chưa được đóng gói với ứng dụng. Các thư mục libs đang được "ứng dụng" nếu thay đổi bất cứ điều gì và tôi đã bắt đầu với dự án JNI mặc định được tạo ra bởi Android Studio 2.2 ...
[Cập nhật]
Tôi đã thử đặt libSomething.so dưới ứng dụng/src/main/jniLibs/armeabi-v7a nhưng bây giờ thư viện "chính" (native-lib) không được đóng gói.
[Update2]
Tôi đã thêm nguồn thiết lập cấu hình bao gồm sản lượng cmake dir và các công trình này nhưng là xấu xí như địa ngục và không phải là thực sự là một giải pháp lâu dài ...
sourceSet
{
main
{
jniLibs.srcDirs = [ "libs", ".externalNativeBuild/cmake/debug/obj"]
}
}