android - 构建 Android 应用程序时禁用 CMake 目标

标签 android c++ android-studio cmake

我有一个使用 C++ native 代码的 Android 应用程序,该代码是使用 CMake 构建的。在项目的 CMakeLists 中,使用 add_subdirectory() 添加了一个库。这个库有很多目标,其中一些不针对 Android 平台编译(它们在 Android 上产生编译错误)。但是,我的 Android 应用程序不链接任何这些目标,因此根本不需要构建它们。但无论如何,Android Studio 都会尝试构建它们。

我的问题是是否有可能以某种方式在 Android Studio 中禁用这些目标。我可以告诉 Android Studio 不要构建这些目标吗?

最佳答案

Google 想到了这一点:您可以 select which targets to build . 下面的示例是链接示例的最小版本;它只构建libexample-one:

android {
    defaultConfig {
        externalNativeBuild {
            cmake {
                // Note that  Gradle packages only shared libraries into your APK.
                targets "libexample-one"
            }
        }
    }
}

或者,您可以破解库的 CMakeLists.txt 以从自动构建中排除有问题的目标。

关于android - 构建 Android 应用程序时禁用 CMake 目标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57007783/

相关文章:

android - onLongClick 只应在条件为真时发生

java - 更改 Google map 旋转轴

android - 我可以在我的 Android 工作室的项目资源管理器中隐藏某些文件和文件夹吗?

C++,以下代码的计算顺序

java - session 在 android 的 webView 中不起作用

java - Android :onClick from XML 上的应用程序崩溃

android - Firebase Analytics 虚线

c++ - 将 int 附加到 std::string

c++ - 带点更新的范围总和范围

android-studio - Quick Docs 不会在 Android Studio 中自动显示