android 调用自己写的C函数库 代码

java  通过jni 调用C语言定义的函数时 首先要生成函数原型

    具体步奏1-3: NDK里面自带一些案例 可以参考

     
      1  -----函数原型(C语言头文件):
               
                  | 是存在C/C++的头文件中。
                  |
                  | java提供了javah的工具 可以直接根据java的代码的 native 修饰声明的本地方法代码
                  |
                  | 生成 .h结尾的C语言的函数原型的头文件
                  |
                  | 函数原型的头文件里的方法 有一定的命名规则 可以根据 命名来推断 jni本地函数与那个jAVA类的方法相对应
       
       2  ----- C语言的具体实现
        
                  |   编写C语言时 导入生成的函数原型头文件 根据函数原型的内容编写C语言的方法
                  |  
                  |   为了保证jni的正常进行不要随意修改生成的函数原型文件只要修改C语言的方法即可
                  |   
                  |   Java 和C语言的 基本数据类型 部分有差别 如 JAVA 的String 要通过jni函数来转换成C语言的字符串
                                                                         
                                                                              const char *str=(*env)->GetStringUTFChar(env,string,0);


      3  ----- 用Visual 将C语言生成共享库 / 或者 安装NDK来生成共享库  xx-.so 文件   
            
              配置NDK开发 请参照 http://www.cnblogs.com/baronzhao/archive/2012/07/10/2585181.html              

 

             下面是一个  java 调用jni的案例 http://download.csdn.net/detail/only__one/6418687

              编译生成so函数库的案例 自己可以在 ndk的代码中找到案例
             在java 代码中 加载共享库 调动native 方法 实现调用C语言的方法

 

       
             

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

邻居出行

码农不易,相互鼓励!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值