zoukankan      html  css  js  c++  java
  • Android Jni引用第三方库

    在jni下新建文件夹(jniLib)用来存放第三方so库:

    将so拷贝到jniLib下,新建一个Android.mk文件:

    LOCAL_PATH:= $(call my-dir)  
    include $(CLEAR_VARS)  
    LOCAL_MODULE    := libadd_putao_pre  
    LOCAL_SRC_FILES :=  libadd_putao.so  
    include $(PREBUILT_SHARED_LIBRARY)  
    

    在你需要使用该动态库的Android.mk修改为类似如下:

    LOCAL_PATH := $(call my-dir)
    
    include $(CLEAR_VARS)
    LOCAL_DISABLE_FORMAT_STRING_CHECKS := true
    LOCAL_LDLIBS    := -lm -llog 
    LOCAL_MODULE     := xxxx
    LOCAL_SRC_FILES  := xxx.pp xx.c 
    LOCAL_STATIC_LIBRARIES := libadd_putao
    include $(BUILD_SHARED_LIBRARY)

    在C/C++代码中添加如下:

    void *handle = dlopen("libadd_putao.so", RTLD_LAZY);
      if (!handle) {
        __android_log_print(ANDROID_LOG_INFO,"------->", dlerror());
      return NULL;
    }
    
    decrypt = (返回)dlsym(handle, "xxx_method_name");
    if (!decrypt) {
      __android_log_print(ANDROID_LOG_INFO,"------->", dlerror());
      return NULL;
    }

    如果你是C++,Application.mk添加如下:

    APP_ABI := armeabi
    APP_STL := gnustl_static
    APP_PLATFORM := android-19
    

    OK 编译吧,大功告成!

  • 相关阅读:
    ASP计算周开始和一年有多少周及某年第一周开始日期
    http://www.lancen.net/
    JSP的对象
    两个SQL语句
    sql 分頁
    网页特效制作汇总
    存储过程 解密
    一个计算周次和本周时间范围的代码(c#)
    Java试题
    如何在 VS 2005 里调试 Javascript
  • 原文地址:https://www.cnblogs.com/inbase/p/5391829.html
Copyright © 2011-2022 走看看