1、path环境变量 2、android studio关联ndk local.properties ndk.dir gradle.properties android.useDeprecatedNdk=true//兼容老版本 3、build.gradle 配置 defaultConfig{ ndk{ ...
分类:
移动开发 时间:
2017-11-14 14:32:01
阅读次数:
203
Java与原生代码通信涉及到原生方法声明与定义、数据类型、引用数据类型操作、NIO操作、访问域、异常处理、原生线程 1、原生方法声明与定义 关于原生方法的声明与定义在上一篇已经讲一点了,这次详细分析一下。根据javah自动生成的头文件,可以看出原生方法的声明和定义,例如: JNIEXPORT jst ...
分类:
移动开发 时间:
2017-11-13 21:35:55
阅读次数:
178
一、捕获异常 异常处理是Java中的功能,在Android中使用SDK进行开发的时候经常要用到。Android原生代码在执行过程中如果遇到错误,需要检测,并抛出异常给Java层。执行原生代码出现了问题,例如使用了空指针、内存泄漏,并且没有做相应的检测盒异常抛出,APP会马上闪退,没有任何提示。 JN ...
分类:
移动开发 时间:
2017-11-13 21:19:48
阅读次数:
196
1. 下载开发工具 下载CMake、LLDB、Android NDK,如图所示(勾选表示已经下载了,没勾选就勾选并点击右下角的apply进行下载,减号表示下载不完整或者有更新,再点击就可以勾选然后apply去下载或更新): CMake是编译器,类似于GCC、Clang等等。LLDB是用于调试的,类似 ...
分类:
移动开发 时间:
2017-11-10 12:45:17
阅读次数:
163
原本项目中依赖子进程执行的地方,都使用jni调用java层的ProcessManager,换了c++ACE框架后,发现这些任务都很慢,调试才发现所有子进程执行的任务都必须等待到reactor超时才返回控制权。一时慌了居然怀疑是不是app进程没有收到SIGCHLD信号,所以调试跟踪了一下内核,信号正常 ...
分类:
其他好文 时间:
2017-11-03 21:52:29
阅读次数:
178
一、准备工作 下载NDK: http://dl.google.com/android/repository/android-ndk-r12b-windows-x86_64.zip 二、Android studio 环境配置 路径: File->Setting->看图,还有一个NDK要勾选上。 三、新 ...
分类:
移动开发 时间:
2017-10-16 16:38:36
阅读次数:
258
NDK 开发使用cMake方式,网上能找到不少的教程,这里推荐一篇博文: http://blog.csdn.net/wl9739/article/details/52607010 关于添加其他的预编译库,网上很多文章写得不太准确,这里说下步骤: 1,将预编译库加入项目 2,编辑CMakeLists. ...
分类:
其他好文 时间:
2017-09-29 15:05:44
阅读次数:
278
目前为止在安卓方面的已经工作了三年左右的时间了,从一个只会写BUG的菜鸟,到现在慢慢发展成了一名程序员。其实说实在的,我学的也一塌糊涂,当然在学习过程也积累了一些知识,对于以前没接触过Android的朋友,或者刚入门Android 的朋友,这篇文章作为入门,那是再合适不过了,希望对刚入门Androi... ...
分类:
移动开发 时间:
2017-09-07 00:04:23
阅读次数:
280
OpenGL ES3 非常好的系列文章: OpenGL-ES 3.0学习指南(五)——EGL基础 NDK开发OpenGL ES 3.0(二)——初见GLES,第一个三角形 NDK开发OpenGL ES 3.0(三)——着色器基础 NDK开发OpenGL ES 3.0(四)——旋转的彩色方块 其他的文... ...
分类:
其他好文 时间:
2017-08-19 10:50:16
阅读次数:
163
ctags+vim还是太累了,还是使用IDE好,尤其是c++模板。KDevelop就不错,符号智能推导以及cmake项目管理和配置,还是挺好用的。 Android端的ndk开发使用Android Studio,服务端开发就用KDevelop,谁让我用了Ice。 KDevelop不用编译,不用yum或 ...
分类:
其他好文 时间:
2017-08-18 22:20:28
阅读次数:
237