一、基本環(huán)境搭建
1.軟件支持
首先下載Visual Studio Code和Android Studio
選擇對應(yīng)系統(tǒng)的軟件最新版本,下載完成后安裝即可
2.軟件環(huán)境
①.?Visual Studio Code?
打開vscode,按下Ctrl + Shift + X進(jìn)入拓展,在搜索框內(nèi)輸入C/C++ Extension Pack,然后選擇安裝(install),安裝完成后如下所示(如已經(jīng)安裝則忽略)
?
?②.Android Studio
打開Android Studio,創(chuàng)建Native C++應(yīng)用或者打開已經(jīng)存在的項目,然后選擇File -> System Settings -> Android Sdk -> SDK Tools,勾選NDK(Side by side),然后點擊Apply(如果已經(jīng)安裝可以忽略)
?
?然后記住ndk安裝的路徑,一般為Android SDK Location該路徑下的ndk文件夾中,不同版本對應(yīng)一個子文件版本,以作者安裝路徑為例為:"D:\RJ\AndroidSDK\ndk\25.2.9519653"
二、具體項目開發(fā)
1.打開C/C++代碼目錄
使用vscode打開android-ndk項目中需要開發(fā)的的cpp目錄或jni目錄
如下圖所示?
?
2.無法找到頭文件的錯誤提示
鼠標(biāo)移動到任意紅標(biāo)頭文件上,然后再彈窗的錯誤提示框中選擇快速修復(fù)
?
?然后選擇第一個'編輯"includePath"'選擇
?
?3.添加C/C++配置文件
在彈窗的配置頁面中,點擊以下內(nèi)容中的"c_cpp_properties.json"文本
通過單擊文件鏈接或使用以下命令切換到 c_cpp_properties.json 文件:
C/C++: 編輯配置(JSON)
?
或者可以在當(dāng)前根目錄中,創(chuàng)建.vscode文件夾,然后創(chuàng)建名為"c_cpp_properties.json"的文件,并填入以下內(nèi)容:
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceFolder}/**"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"windowsSdkVersion": "10.0.18362.0",
"compilerPath": "cl.exe",
"cStandard": "c17",
"cppStandard": "c++17",
"intelliSenseMode": "windows-msvc-x64"
}
],
"version": 4
}
?4.添加頭文件路徑
在打開的"c_cpp_properties.json"文件中添加頭文件路徑
找到"includePath"數(shù)組項,然后在內(nèi)容中添加你的ndk路徑+“\\toolchains\\llvm\\prebuilt\\windows-x86_64\\sysroot\\usr\\include”,作者ndk路徑為'D:\RJ\AndroidSDK\ndk\25.2.9519653",則如下所示
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceFolder}/**",
"D:\\RJ\\AndroidSDK\\ndk\\25.2.9519653\\toolchains\\llvm\\prebuilt\\windows-x86_64\\sysroot\\usr\\include\\c++\\v1\\**",
"D:\\RJ\\AndroidSDK\\ndk\\25.2.9519653\\toolchains\\llvm\\prebuilt\\windows-x86_64\\sysroot\\usr\\include\\**"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"windowsSdkVersion": "10.0.18362.0",
"compilerPath": "cl.exe",
"cStandard": "c17",
"cppStandard": "c++17",
"intelliSenseMode": "windows-msvc-x64"
}
],
"version": 4
}
?
5.配置完成
這時就配置好了,回到之前紅標(biāo)的文件,可以發(fā)現(xiàn)紅標(biāo)少了很多,剩下的紅標(biāo)也一般不用特別處理,如果引用了非android官方的頭文件,則可以重復(fù)上一步,加上其頭文件所在目錄即可
?
?三、其他
1.本文僅解決了部分編寫時找不到頭文件和無法跳轉(zhuǎn)的問題,如果有更好的方法歡迎討論
2.android studio高版本配合ndk高版本也能達(dá)到部分該效果,但是有些時候還是不能找到頭文件
3.如果要編譯和JNI部分,這篇文章不會涉及,如有需要可見官方文檔:
向您的項目添加 C 和 C++ 代碼 ?|? Android Studio ?|? Android Developers文章來源:http://www.zghlxwxcb.cn/news/detail-776021.html
JNI 提示 ?|? Android NDK ?|? Android Developers文章來源地址http://www.zghlxwxcb.cn/news/detail-776021.html
到了這里,關(guān)于使用vscode開發(fā)android ndk的思路的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!