eclipse迁移到as ndk 不能生成.so文件的配置问题

来源:互联网 发布:组织权限控制 java 编辑:程序博客网 时间:2024/05/17 03:39
apply plugin: 'com.android.application'android {    compileSdkVersion 19    buildToolsVersion "25.0.1"    defaultConfig {        applicationId "com.jd.voice.jdvoicesdk"        minSdkVersion 8        targetSdkVersion 17        ndk {            moduleName "jdvoice"            ldLibs "log", "z", "m"            abiFilters "armeabi", "armeabi-v7a", "x86", "mips"        }    }    sourceSets {        main {            jni.srcDirs = []//设置禁止gradle生成Android.mk            jniLibs.srcDirs = ['src/main/jniLibs']//设置目标的so存放        }    }    tasks.withType(JavaCompile) {        compileTask -> compileTask.dependsOn 'ndkBuild','copyThirdso', 'copyJniLibs'    }    task ndkBuild(type: Exec) {        def ndkBuildingDir = project.plugins.findPlugin('com.android.application').sdkHandler.getNdkFolder().absolutePath        commandLine ndkBuildingDir + "/ndk-build.cmd", '-C', 'src/main/jni',                "NDK_OUT=$buildDir/intermediates/ndk/obj",                "NDK_APP_DST_DIR=$buildDir/intermediates/ndk/libs/\$(TARGET_ARCH_ABI)"    } //设置新的so的生成目录    task copyJniLibs(type: Copy) {        from fileTree(dir: file(buildDir.absolutePath + '/intermediates/ndk/libs'), include: '**/*.so')        into file('src/main/jniLibs')    }       //将新生成的so拷贝到jniLibs目录    task copyThirdso(type: Copy) {        from file('src/main/jni/vvw/libs')        into file('src/main/jniLibs')    }               //将第三方的so拷贝到jniLibs目录    buildTypes {        release {            minifyEnabled false            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'        }    }}dependencies {    compile 'com.android.support:support-v4:19.1.0'}
按照以上修改配置文件即可
0 0
原创粉丝点击