如何在 Windows 上使用 Android Studio 编译 CMake

在开发 Android 应用时,有时我们需要使用 CMake 进行本地代码编译。作为一名刚入行的小白,了解整个流程是非常重要的。在这篇文章中,我将给你详细介绍在 Windows 上使用 Android Studio 编译 CMake 的步骤。

整体流程

以下是整个流程的步骤表:

步骤编号 步骤 说明
1 安装 Android Studio 下载并安装最新版的 Android Studio。
2 配置 Android SDK 确保安装了 CMake 和 NDK。
3 创建新项目 使用 Android Studio 新建一个项目。
4 创建 CMakeLists.txt 为项目创建 CMake 配置文件。
5 编写代码 编写 C++ 代码以实现你需要的功能。
6 编译项目 使用 Android Studio 编译项目。
7 运行和测试 在模拟器或真实设备上运行应用并测试。

每一步的详细说明

1. 安装 Android Studio

首先,你需要安装 Android Studio。可以在 [Android Studio 官网]( 下载最新版。

2. 配置 Android SDK

  1. 打开 Android Studio。
  2. 导航至 File -> Settings -> Appearance & Behavior -> System Settings -> Android SDK
  3. 检查是否安装了 CMakeNDK,如果没有,请勾选并安装。

3. 创建新项目

  1. 在 Android Studio 欢迎屏幕中,选择 New Project
  2. 选择一个模板,例如 Empty Activity
  3. 输入项目名称及包名,选择 KotlinJava,最后点击 Finish 进行项目创建。

4. 创建 CMakeLists.txt

在项目的根目录下创建一个名为 CMakeLists.txt 的文件。下面是一个简单的示例代码:

cmake_minimum_required(VERSION 3.4.1) # 设置最小的 CMake 版本

add_library( # Sets the name of the library.
             native-lib

             # Sets the library as a shared library.
             SHARED

             # Provides a relative path to your source file(s).
             native-lib.cpp ) # 你的 C++ 源文件

find_library( # Sets the name of the path variable.
              log-lib

              # Specifies the name of the NDK library that
              # you want CMake to locate.
              log ) # Android log 库

target_link_libraries( # Specifies the target library.
                       native-lib

                       # Links the log library to the target library.
                       ${log-lib} )

这段代码告诉 CMake 如何构建一个名为 native-lib 的共享库,并链接 Android 的日志库。

5. 编写代码

cpp 文件夹(通常位于 app/src/main 下)中,创建一个名为 native-lib.cpp 的文件,并输入以下代码:

#include <jni.h> // 引入 JNI 头文件

extern "C"
JNIEXPORT jstring JNICALL
Java_com_example_myapp_MainActivity_stringFromJNI(JNIEnv *env, jobject /* this */) {
    return env->NewStringUTF("Hello from C++"); // 返回 C++ 字符串
}

这里定义了一个 JNI 方法,它将返回一个字符串。

6. 编译项目

  1. 在 Android Studio 中,打开 build.gradle 文件(模块级),确保有以下代码以启用 CMake 支持:
externalNativeBuild {
    cmake {
        path "CMakeLists.txt" // 指向 CMakeLists.txt 文件
    }
}

// 在 android { } 的闭包内
compileSdkVersion 31 // 确保使用最新的 SDK 版本
  1. 点击 Build -> Rebuild Project,进行编译。

7. 运行和测试

  1. 连接 Android 设备或启动模拟器。
  2. 点击运行按钮(或使用 Shift + F10)来运行应用。
  3. 打开 Logcat,查看输出是否包含 Hello from C++

类图

classDiagram
    class MainActivity {
        +string stringFromJNI()
    }
    class native-lib {
        +string getString()
    }
    MainActivity --> native-lib : 呼叫

旅行图

journey
    title 使用 Android Studio 编译 CMake
    section 环境准备
      安装 Android Studio: 5: 已完成
      配置 Android SDK: 4: 已完成
    section 创建项目
      创建新项目: 5: 已完成
      创建 CMakeLists.txt: 5: 已完成
    section 编写代码
      编写 C++ 代码: 5: 已完成
    section 编译与测试
      编译项目: 5: 已完成
      运行与测试: 5: 已完成

结论

通过以上步骤,你现在应该能够在 Windows 上使用 Android Studio 编译 CMake 项目。你不仅学会了安装和配置工具,还了解了如何编写 C++ 代码并将其集成到 Android 应用中。如果你在这个过程中遇到问题,不要气馁,多查阅文档或向社区寻求帮助。编程是一个不断学习和探索的过程,慢慢地你会变得更加熟练。祝你在开发旅程中一切顺利!