最近遇到一個小問題,Android Studio3.0 上寫的項目,升級到了Android Studio 3.6 上,.cpp 下的文件出現了問題:
找不到相應的包,各種報紅,並提示 : this file is not part of the project 。雖然項目仍然可以編譯,但是看着很不爽。而且沒有代碼提示功能了
解決:
網上都搜索了一些方法:
更換NDK 版本號、
刪除 : app\.externalNativeBuild\cmake下的debug和release兩個目錄等都沒解決問題
後來用android Studio 新創建了一個項目,對比了一下發現了項目的不同之處:
新的項目:
原有項目:
通過對比可以發現:
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 文件 都需要改一下路徑
改完之後,再次編譯,發現問題解決!