
JNI
文章平均质量分 71
枫竹梦
枫竹梦,像风一样追逐自己的梦想!
展开
-
使用Android NDK编译Android的Native库
使用Android NDK编译Android的Native库系列文章的大纲如下:JNI 简介JNI 基本类型JNI StringJNI 数组JNI 实例变量JNI 静态变量JNI 回调实例方法与静态方法JNI 调用Java中的super.method()JNI 中创建对象JNI 中创建对象数组JNI 中局部引用和全局引用JNI 动态注册使用Android NDK编译Android的Native库使用Android NDK编译Android的Native库这个应该没什么困难原创 2021-11-26 08:45:00 · 460 阅读 · 0 评论 -
JNI 动态注册
JNI 动态注册在上一篇中介绍了JNI中局部引用和全局引用。本文是JNI系列的第十二篇,介绍JNI中的如何使用动态注册的方式进行实现JNI方法。系列文章的大纲如下:JNI 简介JNI 基本类型JNI StringJNI 数组JNI 实例变量JNI 静态变量JNI 回调实例方法与静态方法JNI 调用Java中的super.method()JNI 中创建对象JNI 中创建对象数组JNI 中局部引用和全局引用JNI 动态注册使用Android NDK编译Android的Native原创 2021-11-25 08:45:00 · 2217 阅读 · 0 评论 -
JNI 中局部引用和全局引用
JNI 中局部引用和全局引用在上一篇中介绍了JNI中创建对象数组。本文是JNI系列的第十一篇,介绍JNI中的如何调在Native代码调用Java中的方法和静态方法。系列文章的大纲如下:JNI 简介JNI 基本类型JNI StringJNI 数组JNI 实例变量JNI 静态变量JNI 回调实例方法与静态方法JNI 调用Java中的super.method()JNI 中创建对象JNI 中创建对象数组JNI 中局部引用和全局引用JNI 动态注册使用Android NDK编译Andr原创 2021-11-24 08:45:00 · 920 阅读 · 0 评论 -
JNI 中创建对象
JNI 中创建对象在上一篇中介绍了JNI 调用Java中的super.method()。本文是JNI系列的第九篇,介绍JNI中的如何在Native代码中创建Java对象。系列文章的大纲如下:JNI 简介JNI 基本类型JNI StringJNI 数组JNI 实例变量JNI 静态变量JNI 回调实例方法与静态方法JNI 调用Java中的super.method()JNI 中创建对象JNI 中创建对象数组JNI 中局部引用和全局引用JNI 动态注册使用Android NDK编译A原创 2021-11-22 09:00:00 · 1918 阅读 · 0 评论 -
JNI 中创建对象数组
JNI 回调实例方法与静态方法在上一篇中介绍了JNI中创建对象。本文是JNI系列的第十篇,介绍JNI中的如何调在Native代码中创建对象数组。系列文章的大纲如下:JNI 简介JNI 基本类型JNI StringJNI 数组JNI 实例变量JNI 静态变量JNI 回调实例方法与静态方法JNI 调用Java中的super.method()JNI 中创建对象JNI 中创建对象数组JNI 中局部引用和全局引用JNI 动态注册使用Android NDK编译Android的Native原创 2021-11-23 09:00:00 · 3037 阅读 · 0 评论 -
JNI 调用Java中的super.method()
JNI 调用Java中的super.method()在上一篇中介绍了JNI 回调实例方法与静态方法。本文是JNI系列的第八篇,介绍JNI中的如何在Native代码中调用当前类的父类的方法。系列文章的大纲如下:JNI 简介JNI 基本类型JNI StringJNI 数组JNI 实例变量JNI 静态变量JNI 回调实例方法与静态方法JNI 调用Java中的super.method()JNI 中创建对象JNI 中创建对象数组JNI 中局部引用和全局引用JNI 动态注册使用Andr原创 2021-11-21 11:00:00 · 630 阅读 · 0 评论 -
JNI 回调实例方法与静态方法
JNI 回调实例方法与静态方法在上一篇中介绍了JNI静态变量。本文是JNI系列的第七篇,介绍JNI中的如何调在Native代码调用Java中的方法和静态方法。系列文章的大纲如下:JNI 简介JNI 基本类型JNI StringJNI 数组JNI 实例变量JNI 静态变量JNI 回调实例方法与静态方法JNI 调用Java中的super.method()JNI 中创建对象JNI 中创建对象数组JNI 中局部引用和全局引用JNI 动态注册使用Android NDK编译Android原创 2021-11-19 18:55:23 · 2155 阅读 · 0 评论 -
JNI静态变量
JNI静态变量在上一篇中介绍了JNI实例类型。本文是JNI系列的第六篇,介绍JNI中的如何访问类静态变量。系列文章的大纲如下:JNI 简介JNI 基本类型JNI StringJNI 数组JNI 实例变量JNI 静态变量JNI 回调实例方法与静态方法JNI 调用Java中的super.method()JNI 中创建对象JNI 中创建对象数组JNI 中局部引用和全局引用JNI 动态注册使用Android NDK编译Android的Native库JNI 静态变量上一篇讨论了如原创 2021-11-16 08:45:00 · 2539 阅读 · 0 评论 -
JNI实例变量
JNI实例变量在上一篇中介绍了JNI 数组类型。本文是JNI系列的第五篇,介绍JNI中的如何访问实例变量。系列文章的大纲如下:JNI 简介JNI 基本类型JNI StringJNI 数组JNI 实例变量JNI 静态变量JNI 回调实例方法与静态方法JNI 调用Java中的super.method()JNI 中创建对象JNI 中创建对象数组JNI 中局部引用和全局引用JNI 动态注册使用Android NDK编译Android的Native库JNI 类和对象要想访问实例变原创 2021-11-15 08:30:00 · 2192 阅读 · 0 评论 -
JNI数组
JNI数组在上一篇中介绍了JNI String类型。本文是JNI系列的第四篇,介绍JNI中的引用类型—Array类型。系列文章的大纲如下:JNI 简介JNI 基本类型JNI StringJNI 数组JNI 实例变量JNI 静态变量JNI 回调实例方法与静态方法JNI 调用Java中的super.method()JNI 中创建对象JNI 中创建对象数组JNI 中局部引用和全局引用JNI 动态注册使用Android NDK编译Android的Native库JNI数组如在 J原创 2021-11-14 21:29:18 · 2216 阅读 · 0 评论 -
JNI String类型
在上一篇中介绍了JNI的基本数据类型。本文是JNI系列的第三篇,介绍JNI中的除了基本类型之外的引用类型—String类型。系列文章的大纲如下:JNI 简介JNI 基本类型JNI StringJNI 数组JNI 实例变量JNI 静态变量JNI 回调实例方法与静态方法JNI 调用Java中的super.method()JNI 中创建对象JNI 中创建对象数组JNI 中局部引用和全局引用JNI 动态注册使用Android NDK编译Android的Native库JNI引用类型原创 2021-02-21 22:25:45 · 1677 阅读 · 0 评论 -
JNI基本数据类型
本文是JNI系列的第二篇,介绍JNI中的基本数据类型,以及Java和native的传递约定。系列文章的大纲如下:JNI 简介JNI 基本类型JNI StringJNI 数组JNI 实例变量JNI 静态变量JNI 回调实例方法与静态方法JNI 调用Java中的super.method()JNI 中创建对象JNI 中创建对象数组JNI 中局部引用和全局引用JNI 动态注册使用Android NDK编译Android的Native库JNI中的基本数据类型传递基本类型参数..原创 2021-02-20 01:47:20 · 1146 阅读 · 0 评论 -
JNI简介
准备对JNI开发的知识点做一个总结和分享,大概会介绍如下内容:JNI 简介JNI 基本类型JNI StringJNI 数组JNI 实例变量JNI 静态变量JNI 回调实例方法与静态方法JNI 调用Java中的super.method()JNI 中创建对象JNI 中创建对象数组JNI 中局部引用和全局引用JNI 动态注册使用Android NDK编译Android的Native库详细关注JNI分类。https://blog.youkuaiyun.com/furzoom/category_6原创 2021-02-06 23:50:45 · 1537 阅读 · 1 评论 -
使用IntelliJ IDEA和CLion开发JNI环境搭建
文章目录背景IntelliJ IDEA设置CLion设置编译与运行背景无论在开发Android项目还是Java项目时,为了复用现有的C/C++代码,或者添加破解的难度,会使用C/C++开发一部分核心的功能。JVM与C的接口使用JNI,不再多述。后面会有文章进行详细的说明。本文中枫竹梦只说明环境的搭建,以及一个Hello JNI的demo。IntelliJ IDEA设置新建一个项目命名为HelloJNI新建目录jni,用于存储生成的头文件。新建目录lib,用于存放C/C++编译的动态库文原创 2021-01-31 22:07:49 · 4131 阅读 · 1 评论 -
javah生成带有包名的头文件
无包名情况多数的demo都是基于这种条件,假设在目录jni/下有一个包含native方法的文件Hello.class。进入jni/目录,直接执行javah Hello,就可以在jni/目录下生成文件Hello.h文件。有包名情况假设文件Hello.class在包com.furzoom中,文件在目录jni/com/furzoom/Hello.class中,则进入jni/目录,执行java原创 2017-05-16 23:32:47 · 2455 阅读 · 0 评论 -
Windows、Linux、Mac OSX编译jni动态库
在不同平台下默认调用不同名字的动态库,在Windows平台调用name.dll,在Linux平台调用libname.so,在OSX下调用libname.jnilib。不同平台下的编译的方法也有些区别。Windows平台gcc -Wl,--add-stdcall-alias -I"%JAVA_HOME%\include" -I"%JAVA_HOME%\include\win32" -sh原创 2017-05-17 00:14:52 · 1956 阅读 · 0 评论 -
OSX上进行JNI开发的流程及命令
1. 声明native方法HelloWorld.javaclass HelloWorld { private native void print(); public static void main(String[] args) { new HelloWorld().print(); } static { System.l原创 2017-12-23 23:51:19 · 896 阅读 · 0 评论