2015-11-07 38 views
0

我正在使用android studio ndk。我想創建一個JNI的.so,但是這個.so是指另一個.so,所以我應該鏈接到另一個.so當編譯JNI .so 以下是我的JNITest \ app \ build.gradleandroid studio用第三個庫(.so)編譯NDK

android { 
    compileSdkVersion 22 
    buildToolsVersion "22.0.1" 

    defaultConfig { 
     applicationId "com.example.administrator.jnitest" 
     minSdkVersion 15 
     targetSdkVersion 22 
     versionCode 1 
     versionName "1.0" 

     ndk { 
      moduleName "JniTest" 
      ldLibs "log", "z", "m" ,"netsdk", "rtspclient" , "osl" 
      abiFilters "armeabi", "armeabi-v7a", "x86" 
     } 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile 'com.android.support:appcompat-v7:22.1.1' 
} 

「NETSDK」,「rtspclient」,「OSL」是依賴共享庫,我不知道如何。所以路徑添加到他們現在

回答

0

的gradle這個DSL支持NDK報告很多unreference ldFlags,例如

ldFlags += "-L<path-to-libs>" 

此外,你應該指示Android Studio將第三方庫打包成APK:

jniLibs.srcDirs = "<path-to-libs>" 
+0

的gradle這個報告錯誤:(16,0)無法在COM找物業 'LDFLAGS'。 [email protected]。 – Json

+0

我使用AS 1.2.1.1版本 – Json

+0

對不起,在你的版本中你應該刪除**'='**和**'+ ='** –