【android studio】添加C/C++支持的兩種方式(cmake)

1、創建項目時添加

首先在AndroidStudio初始界面Start a new project
在這裏插入圖片描述
接着直接點擊 Native C++
在這裏插入圖片描述
之後可以設置C++的標準,我們選擇Default在這裏插入圖片描述

在/app/src/main/cpp下是自動生成的native-lib.cpp,在這裏實現native方法

2、創建完普通項目再添加支持

如果嫌它總是會自動生成一些不是想要的東西(native-lib.cpp),你還得自己刪除,顯得累贅
於是我們着手自己添加C/C++支持
一樣,點擊普通項目生成
在這裏插入圖片描述
這是項目結構
在這裏插入圖片描述

設置app/build.gradle

打開app下的build.gradle

defaultConfig{}裏添加

externalNativeBuild{
	cmake{
		cppFlags ""//這裏選擇cpp設置 
		//如果要添加C++11支持就是 cppFlags "-std=c++11"
	}
}

android{}裏添加

externalNativeBuild{
	cmake{
		path "CMakeLists.txt"
		//相對於build.gradle的路徑,如果是同一個目錄,直接寫"CMakeLists.txt"(完全一致),如果在當前目錄xxx下
		//則爲"xxx/CMakeLists.txt"
	}
}

在這裏插入圖片描述

創建CMakeLists.txt

和剛纔說的一樣,創建的位置要和path裏寫的一致
我選擇創建在app下

在這裏插入圖片描述
注意 log和庫不要寫反,是把log鏈接到libMyLib(因爲自己的類是SHARED本身並不包含log的實現)
用add_library創建自己的庫,第一行名稱,第二行類型,第三行是相對路徑(可以隨便寫,要保持一致)
target_link_libraries是鏈接log庫與我的庫到程序中
具體可以看 cmake學習筆記之add_library、target_link_libraries和link_directories

gradle sync build同步

在這裏插入圖片描述
每次修改配置文件都會出現這個提示,點擊Sync Now就可以了
再看項目目錄,藍色文件夾(如java)表示已添加進項目
在這裏插入圖片描述
可是cpp文件夾還是灰的怎麼辦
別急,點擊菜單欄,按順序執行
1、Build->Rebuild-> Rebuild Projects
2、Build->Rebuild-> Linked C++ Projects

可以看到cpp已經變藍了
在這裏插入圖片描述
試着在MainActivity中添加本地方法並在main.cpp裏添加一個實現
這裏是佈局文件
在這裏插入圖片描述
主類
在這裏插入圖片描述
cpp文件
在這裏插入圖片描述
一個簡單的實現10以內隨機數的實例

這是摔坑好幾次總結出來的

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章