NDK和依赖的一些知识

    xiaoxiao2023-03-24  4

    一、NDK

    JDK : Java Development Kit(Java开发工具包)

    SDK : Software Development Kit(软件开发工具包)

    NDK :Native Development Kit (原生开发工具包,可以通过这个工具包用C / C++开发)

    JNI :Java Native Interface (Java原生的接口)

    使用NDK的优劣:

    ▶  优点:1. 代码的保护。apk的Java层代码很容易被反编译,而C/C++库反汇难度较大;

                2. 可以方便地使用现存的C/C++开源库;

                3. 提高程序的执行效率;

                4. 便于移植;

    ▶  缺点:开发麻烦、调试不方便、难度相对较高

    ▶  什么时候使用NDK?

    NDK会增加代码的复杂性,所以使用的时候要慎重。一般在对CPU要求比较高的时候,会使用C语言编码,可以提高程序的执行效率。使用NDK大部分情况是需要将一些已有的C函数库移植到Android平台的所选择的快捷方法,而不是作为提高代码效率的手段

    二、依赖

    三种使用方法:

    ☛  Library dependency    maven库依赖

    ☛  File dependency 文件依赖(jar、aar等)

    ☛  Module dependency 项目依赖(比如下载下来的一些项目)

    1.  添加依赖的方法:

    ◆  项目引用:首先导入项目文件,打开依赖设置(下图),选择Module dependency,选择项目文件即可。

    compile project(':mylibrary')

    ◆  通过创建library的项目引用:通过File——>New--->New Module--->Library创建一个library的module,创建后,依赖设置中选择Module dependency选项,在module的gradle文件的依赖中会多出下面一段代码;

    ◆  maven库的引用:点击上图中的第一个,直接搜索选择就可以;

    ◆  aar的引用:首先导入aar文件,然后File——>New--->New Module--->Import AAR package--->选择aar文件,创建后,依赖设置中选择File dependency选项,选择文件。然后会看到出现一个和该文件名一样的文件夹(下图中文件名就是mylibrary-debug),settings.gradle中也会出现该文件名的module。

    2. 部分引用方法列表:

    1. compile file Tree(dir:‘xxx’,include:['*.jar',"*.xxx"])    某个目录下所有符合扩展名的文件作为依赖(用于多个文件)

    2. comoile 'com.xx.xx:projectName:version'       编译第三方库作为依赖

    github上,某些比较好的项目会被作者作为一个aar上传到maven中,然后我们可以在github的说明文档中找到依赖的代码(就是上面这种格式),然后复制直接粘贴到依赖代码中,就可以直接使用了;

    3.  compile project(':LibraryModule')      配置另一个Module作为本Module的依赖,被依赖的Module必须被导入到当前工程中

    4. compile files('xxx.jar')      配置某个jar包作为依赖(用于单个文件)

    转载请注明原文地址: https://ju.6miu.com/read-1201087.html
    最新回复(0)