![](https://img-blog.csdnimg.cn/20190927151124774.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
NDK
文章平均质量分 73
AndroidNDK开发知识的收集。
Sharknade
青菜豆腐,汝能持否?
展开
-
NDK sample之一HellojniCallback
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录一、宏定义日志输出二、定义全局变量2.1 初始化全局变量2.2 回调Java层方法三、通过回掉实现计时器的显示3.1 Java层代码3.2 native层的实现一、宏定义日志输出//宏函数定义,调用 头文件#include <android/log.h>中的日志函数static const char* kTAG = "hello-jniCallback";#define LOGI(...) \ ((void原创 2020-09-23 09:40:59 · 284 阅读 · 0 评论 -
NDK之原生线程的使用
NDK日志宏的简单写法#include <android/log.h>#define TAG "native_log"#define LOGE(...) __android_log_print(ANDROID_LOG_ERROR, TAG ,__VA_ARGS__)JNI_OnLoad的使用JNIEXPORT jint JNI_OnLoad(JavaVM* jvm,v...原创 2019-12-31 22:46:36 · 330 阅读 · 0 评论 -
JNI基础之数据类型使用
数据类型基本数据类型引用数据类型对引用数据类型的操作字符串操作数组操作NIO操作访问域调用方法域和方法描述符字符串操作//1. 通过char* 创建jstring//注意当时字符数组的时候,一定要补全结束的符'\0'char hello2[] = {'h','e','l','l','0','\0'};char* str = env->NewStringUT...原创 2019-12-31 22:35:12 · 294 阅读 · 0 评论 -
android cmakelists 简要说明
常用命令cmake_minimum_required(VERSION 3.4.1)aux_source_dirction(. DIR_SRCS)查找当前目录下所有源文件,并将源文件的名称保存到变量 DIR_SRCS中。 且不能查找子目录添加库add_library(<name> [STATIC|SHARED|MODULE] [EXCLUDE_FROM_ALL] sou...原创 2019-08-25 10:54:46 · 472 阅读 · 0 评论 -
CMake基本语法介绍
CMake注释单行注释 #多行 #[[ ]]#CMake的变量定义变量的声明变量名大小写敏感#声明变量set(变量名 变量值)set(var 123)#移除变量unset(var)#使用变量 message命令用来打印message("var = ${var}")列表的声明set(list 1 2 3 4 5)set(list2 "1;2;3;4;5")me...原创 2019-08-25 10:51:50 · 356 阅读 · 0 评论 -
Android Makefile
Android.mk 是什么Android.mk是像NDK构建系统描述NDK项目的GNU makefile片段1.apk2.jar3.可执行程序4. .a5. .soAndroid.mk组成#定义模块的当前路径(必须定义在开头,只需要定义一次)LOCAL_PATH := $(call my-dir) //my-dir宏函数返回的是当前mk的路径#情况当前的环境变量(LOCAL...原创 2019-08-12 09:41:14 · 102 阅读 · 0 评论 -
静态库和动态库
编译流程预处理编译汇编连接预处理完成宏替换,文件引入,去除空行和注释gcc -E test.c -o test.i编译转换成汇编代码;gcc -S test.i -o test.s汇编转成目标文件gcc -c test.i -o test.o连接转成可执行目标文件 gcc test.o -o test ./test静态库静态库实际上是一些目标文件的集...原创 2019-08-12 09:40:01 · 84 阅读 · 0 评论 -
C基础之指针
变量指针指针为什么要有类型?指针是数据存储的起始位置,而类型指示其存储空间的大小。指针的使用原则 1. 声明指针,初始值为NULL 2. 不能去为NULL的指针的值 3. 不要直接给指针int类型的值 二级指针int i = 10;int *p = &i;int **q = &p;//那么使用变量q方法i的值, 使用**q即可。#### 指针的运算void main(){ i原创 2017-09-13 04:27:06 · 213 阅读 · 0 评论 -
Android JNI简介与调用流程
[conowen]大钟的专栏目录视图摘要视图订阅【CSDN 技术主题月】物联网全栈开发 【评论送书】5月书讯:流畅的Python CSDN日报20170602 ——《程序员、技术主管和架构师》 IBM PowerAI人工智能马拉Android的NDK开发(1)————And转载 2017-06-04 23:44:15 · 335 阅读 · 0 评论 -
ndk工具设置
本文的目的就是实现在Android studio上也是Android.mk的方式构建native程序由于AndroidStudio有默认的ndk开发环境。因此我们要做的就是将其关掉;然后通过命令进行:jni的生成so的生成 通过Android生成jni接口文件1.直接上图(File->settings)2.编辑javah工具 Program: path of the javeh.exe P原创 2017-05-18 09:40:19 · 316 阅读 · 0 评论