NDK r17b 怎么运行mk老项目


虽然我也很想使用 cmake 去创建 ndk 项目,奈何 Android 官方文档和我买的开发书上对于 cmake 都显得资料过少,对于新手来说不利于快速学习整个功能

为了能够按照书上一步一步构建项目,嗯,打个比方,github上有个老ndk项目 ImageBlurring 可惜用最新的gradle-4.4 以及 NDK r17b 去运行,都会爆出不少错误,比如下面这个

> Error: Your project contains C++ files but it is not using a supported native build system.
Consider using CMake or ndk-build integration with the stable Android Gradle plugin:
 https://developer.android.com/studio/projects/add-native-code.html
or use the experimental plugin:
 http://tools.android.com/tech-docs/new-build-system/gradle-experimental.

当然也有gradle版本太低,跟如今写法大相径庭的部分,当然本篇关注点不在那,修改 blur/build.gradle 为以下内容

apply plugin: 'com.android.library'

android {
    compileSdkVersion 25
    buildToolsVersion '27.0.3'

    externalNativeBuild {
        ndkBuild {
            path "src/main/jni/Android.mk"
        }
    }

    defaultConfig {
        minSdkVersion 15
        targetSdkVersion 25
        versionCode 200
        versionName "2.0.0"
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

主要关注的是blur内的externalNativeBuild标签,把这个标签曾经的ndk标签删除后,添加这样的标签即可,这样点击"Sync Now"后就完成了适配,很简单

哦哦,最后贴一下引用的方法是 stackoverflow 的大佬
stackoverflow

我的博客即将搬运同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=1z3id963xcdv

你可能感兴趣的:(NDK r17b 怎么运行mk老项目)