Ⅱ. やり方
1. 新規Native C++プロジェクトを作成する
2. CMakeLists.txtを編集する
$(project_root)/app/src/main/cpp/CMakeLists.txt
cmake_minimum_required(VERSION 3.10.2) project("helloworld") add_executable(helloworld native-lib.cpp) find_library(log-lib log) target_link_libraries(helloworld ${log-lib})
3. サンプルプログラムを書く
$(project_root)/app/src/main/cpp/native-lib.cpp
#include <iostream> int main() { std::cout << "Hello world!" << std::endl; return 0; }
4. ビルドする
5. 実行ファイルをAndroidにコピーする
adb push ^ $(project_root)\app\.cxx\cmake\debug\arm64-v8a\helloworld ^ /sdcard/
実行結果
$ ./helloworld Hello world!
FAQ
Q1. armeabi-v7aとarm64-v8aだけビルドしたい
A1. build.gradle(Module)を以下の通り編集する
android { defaultConfig { ndk { abiFilters 'armeabi-v7a', 'arm64-v8a' } } }