zoukankan      html  css  js  c++  java
  • ndk编译so库

    新建一个android工程,cd到该工程目录下: javah -classpath bin/classes -d jni -jni com.archermind.contractmanager.Native

    红色字体代表native类所在的包名,native是声明的一个本地类

    class Native {
        static {
            // The runtime will add "lib" on the front and ".o" on the end of
            // the name supplied to loadLibrary.
            System.loadLibrary("reverse");
        }

        static native void reverse(char[] data);
    }

    执行后会在工程目录中增加一个jni的文件,里面有一个新生成的.h文件,其中由类的接口和返回值的说明,这与你在native类中的定义一致,如绿色部分。然后重命名文件并修改后缀类型,如.c或者.cpp。之后需要一个.mk文件来编译成so库。

    LOCAL_PATH := $(call my-dir)

    include $(CLEAR_VARS)

    LOCAL_MODULE    := reverse  //生成的so库名字
    LOCAL_SRC_FILES := reverse2.c//要编译的文件的名字

    include $(BUILD_SHARED_LIBRARY)

    之后cd到jni目录 执行:ndk-build 即可生成so库(前提是语法没有错误)

  • 相关阅读:
    超参数调试、Batch正则化和程序框架
    优化算法
    深度学习的实用层面
    深层神经网络
    浅层神经网络
    一些实用的JavaScript代码
    mysql练习题1-41
    python 练习题(16-20)
    fiddler抓取https请求
    haproxy监控页面添加及参数简介(转)
  • 原文地址:https://www.cnblogs.com/shuimo/p/2620064.html
Copyright © 2011-2022 走看看