Android Studio 升级到3.6 ,NDK相关cpp文件报红, this file is not part of the project

最近遇到一个小问题,Android Studio3.0 上写的项目,升级到了Android Studio 3.6 上,.cpp 下的文件出现了问题:

找不到相应的包,各种报红,并提示 : this file is not part of the project 。虽然项目仍然可以编译,但是看着很不爽。而且没有代码提示功能了

Android Studio 升级到3.6 ,NDK相关cpp文件报红, this file is not part of the project_第1张图片

 

解决:

网上都搜索了一些方法:

更换NDK 版本号、

删除 : app\.externalNativeBuild\cmake下的debug和release两个目录等都没解决问题

后来用android Studio 新创建了一个项目,对比了一下发现了项目的不同之处:

新的项目:

Android Studio 升级到3.6 ,NDK相关cpp文件报红, this file is not part of the project_第2张图片

 

原有项目:

Android Studio 升级到3.6 ,NDK相关cpp文件报红, this file is not part of the project_第3张图片

 

通过对比可以发现:

1:CMakeLists.txt 的问题位置发生改变;

2、build.gradle(:app) 下的 externalNativeBuild写法发生改变,多加了一个版本号;

按照新的项目的修改,把CMakeLists.txt 移动到src/main/cpp 下,然后更改externalNativeBuild 为:

   externalNativeBuild {
        cmake {
            path "src/main/cpp/CMakeLists.txt"
            version "3.10.2"
        }
    }

注意:CMakeLists.txt 路径改变了,里面引用的所有的.cpp 文件 都需要改一下路径

改完之后,再次编译,发现问题解决!

 

 

你可能感兴趣的:(android开发,android开发之NDK,android,c++,ndk,cmake)