随笔分类 - Android NDK
摘要:1.官方文档 官网 https://www.openssl.org/ Compilation and Installation https://wiki.openssl.org/index.php/Compilation_and_Installation android building https
阅读全文
摘要:1.文档 1.1 curl官方文档 curl 官网 https://curl.se/ curl 代码 https://github.com/curl/curl 编译android so https://curl.se/docs/install.html Android小节 https://githu
阅读全文
摘要:1.官方文档 https://source.android.google.cn/devices/tech/debug https://source.android.google.cn/devices/tech/debug/native-crash 2.死亡报告文件 2.1 示例 在目录 /data/
阅读全文
摘要:1.架构 1.1 架构 1.2 native层 1.3 内核层 2. 使用方法 一个进程得到另一个进程的binder后,就可以通过这个binder给对方发消息。通常通过服务组件得到binder. 2.1 发送方:IBinder.transact() 1 /** 2 * Perform a gener
阅读全文
摘要:1.官方文档 https://developer.android.google.cn/ndk/guides/stable_apis https://developer.android.google.cn/ndk/reference 2.简表 libc/libm/libdl C 库 - libc++_
阅读全文
摘要:1.官网 https://developer.android.com/studio/projects/add-native-code.html https://developer.android.google.cn/ndk/guides/cmake https://developer.android
阅读全文
摘要:ABI的概念: ABI(Application Binary Interface)实际就是指应用程序基于哪种指令集来进行编译,能用到的ABI 也就四种 armeabi,armeabi-v7a ,x86 和mips ,前两者是最常见的。 其次这4个编译选项的含义: 1.‘armeabi’ 默认选项,将
阅读全文
摘要:转自 : http://www.ibm.com/developerworks/cn/java/j-jni/index.html 避免常见缺陷 假设您编写了一些新 JNI 代码,或者继承了别处的某些 JNI 代码,如何才能确保避免了常见缺陷,或者在继承代码中发现它们?表 1 提供了一些确定这些常见缺陷
阅读全文
摘要:转自 : http://www.ibm.com/developerworks/cn/java/j-jni/index.html JNI 编程缺陷可以分为两类: 性能:代码能执行所设计的功能,但运行缓慢或者以某种形式拖慢整个程序。 正确性:代码有时能正常运行,但不能可靠地提供所需的功能;最坏的情况是造
阅读全文
摘要:转自 : http://www.ibm.com/developerworks/cn/java/j-jni/index.html JNI 编程缺陷可以分为两类: 性能:代码能执行所设计的功能,但运行缓慢或者以某种形式拖慢整个程序。 正确性:代码有时能正常运行,但不能可靠地提供所需的功能;最坏的情况是造
阅读全文
摘要:一、ndk调用java类示例 1,调用基本方法 1 /* 2 * Class: com_example_ndksample_MainActivity 3 * Method: ndkFindJavaClass 4 * Signature: ()Ljava/lang/String; 5 */ 6 /*
阅读全文
摘要:1.引用库 在Application.mk 中使用 APP_STL := stlport_static 等. APP_STL 的取值有 : 推荐使用 stlport_static 2.加入头文件 右键项目,Properties ... 加入stl头文件 的include /home/admin/An
阅读全文
摘要:C++ Support C++ Support The Android platform provides a very minimal C++ runtime support library (/system/lib/libstdc++) and corresponding headers for
阅读全文
摘要:env在GetStaticFieldID和GetMethodID 时,函数参数和返回值的类型要指定类型标识串,如: 1)基本类型对应关系 2)基本类型数组 (以 [ 开始,用两个字符表示) 3)类(class) (以 L 开头,以 ; 结尾,中间是用 / 隔开的 包 及 类名) 4)例外(Strin
阅读全文
摘要:转自: http://www.cnblogs.com/canphp/archive/2012/11/13/2768937.htmlC和C++注册native函数的方式大致上相同,下面给出具体的代码。 1 /* JNINativeMethod数组的定义在C和C++中都一样*/ 2 static...
阅读全文
摘要:转自: http://www.cnblogs.com/canphp/archive/2012/11/13/2768937.html 1.前言 首先确保C/C++源文件的字符编码是UTF-8与JAVA的class文件字符编码保持一致。如果C/C++源码含有中文,那么编译出来的so中的中文字符串也保存为
阅读全文
摘要:转自: http://www.cnblogs.com/canphp/archive/2012/11/13/2768937.html JNIEnv是一个与线程相关的变量,不同线程的JNIEnv彼此独立。JavaVM是虚拟机在JNI层的代表,在一个虚拟机进程中只有一个JavaVM,因此该进程的所有线程...
阅读全文
摘要:1.参考官方文档 http://docs.oracle.com/javase/7/docs/technotes/guides/jni/ http://docs.oracle.com/javase/7/docs/technotes/guides/jni/spec/jniTOC.html http://
阅读全文
摘要:1.官方文档 https://developer.android.google.cn/ndk/guides/android_mk 2. Android.mk简介 Android.mk文件是GNU Makefile的一小部分,它用来对Android程序进行编译.一个Android.mk文件可以编译多个
阅读全文