美文网首页Android开发
Android Native开发环境搭建(Android Stu

Android Native开发环境搭建(Android Stu

作者: wzjing | 来源:发表于2017-05-29 23:15 被阅读0次

    Android Studio 2.2之后,引入了Cmake的构建方式来使用C/C++开发,相较于之前Android.mk的方法更加灵活也更加方便。

    1. 新建Android Studio工程,勾选C++Support

    2. 一路Next到这一步

    Step 2

    3. 如果没报错那就是完成了,报错可能是你可能没有NDK,如果没有的话需要下载NDK或者指定本地NDK的目录

    Step 3

    4. 下载完成后,你需要在当前项目的配置中指定NDK目录

    Step 4

    5. 现在来看一下项目的Gradle配置文件,打开Module:appbuild.gradle文件

    Step 5
    有两个externalNativeBuild模块
    1. 指定了defaultConfig里边的额外构建参数
    2. 指定了当前Module的Cmake配置文件路径。此路径相是对于build.gradle的路径而言,因为其实两者在同一目录下,所以,直接写的是"CmakeLists.txt"

    6. CMakeLists.txt文件

    一个标准的CmakeLists.txt文件如下

    # 指定最低Cmake版本
    cmake_minimum_required(VERSION 3.4.1)
    
    # 添加本地代码
    add_library(  native-lib                         # 本地代码生成库的名称(也就是你在Android Studio中写的C/C++代码)
                  SHARED                             # 设置库的类型为共享库
                  src/main/cpp/native-lib.cpp )      # 指定源码文件,也就是cpp文件或c文件,如果有多个cpp或c                          
                                                     # 文件,每个文件之间用空格隔开
    
    # 添加NDK中存在的依赖库
    find_library(  log-lib    # 设置要导入的库在本文件中的变量名称(名字可以随便起)
                   log )      # 指定要查找的NDK库的名称
                  
    # 添加第三方的 “.a .o .so” 库
    add_library(  ffmpeg      # ffmpeg    设置第三方库在本文件中的变量名称
                  SHARED      # SHARED    库的类型为共享库
                  IMPORTED)   # IMPORTED  库是由外部导入
    # 设置第三方库的库文件位置
    set_target_properties( ffmpeg
                           PROPERTIES IMPORTED_LOCATION
                           ${CMAKE_SOURCE_DIR}/src/main/jniLibs/${ANDROID_ABI}/libffmpeg.so )
    # 设置第三方库的头文件位置
    include_directories(${CMAKE_SOURCE_DIR}/src/libs/ffmpeg/include)
    
    # 关联所有库(注意由NDK中添加的库 ${log-lib}的书写方式和其他库不同)
    target_link_libraries(  native-lib
                            ${log-lib}
                            ffmpeg )
    

    相关文章

      网友评论

        本文标题:Android Native开发环境搭建(Android Stu

        本文链接:https://www.haomeiwen.com/subject/sykkfxtx.html