天问

  • Blog
  • 热修复与动态加载
  • python爬虫
  • 专栏
    • 热修复与动态加载
    • NDK开发
    • 设计模式与架构
    • React Native
  • 好文转载
    • 计算机技术
    • 投资理财
    • 摄影与拍照技巧
  • 投稿
  • 关于本站及隐私政策
  • Github
NDK
NDK

【NDK开发之】使用cmake编译管理cpp文件

在安卓NDK开发之java JNI技术中已经提到过对于安卓的NDK开发而言,本质上是2大知识体系组成,一部分是java的JNI技术。另一部分就是对c/c++源文件的编译和管理。比如使用ndk-build模式对mk文件进行编译或cmake模式对CMakeList文件进行编译。新版本的Android Studio默认使用cmake对JNI代码进行管理和编译。而不在推荐使用Android.mk和Application.mk进行编译选项配置。 先来看下AS向导创建一个NDK工程之后为我们自动生成的CMakeList文件的内…

2018年10月28日 0条评论 2493点热度 5人点赞 天问 阅读全文
NDK

JNI开发注意事项集锦

这个是JNI开发必须得注意的,因为JNI开发不像java开发,在java中我们基本上不用去考虑内存释放的问题,因为java的垃圾回收机制会处理这类问题,虽然说JNI层的Local Reference的生命周期持续到一个Native Method的结束,当Native Method返回时Java Heap中的对象不再被持有,也将会被GC回收,但是在JNI中如果我们使用了过多的局部引用,但是未及时释放这些内存,可能会导致出现局部引用表溢出的错误local reference table overflow (max=51…

2017年8月5日 0条评论 1409点热度 6人点赞 天问 阅读全文
NDK

安卓NDK开发之JNI函数动态注册

在安卓NDK开发之Hello JNI 中相信大家已经注意到,AS向导为我们自动生成的NDK工程的JNI函数中,和其对应的java层函数相比,除了参数会自动增加JNIEnv *和 jobject这2个类型的参数以外,函数的名称也发生了变化,如下所示: //java层代码 public native String getString(); //C/C++层代码 jstring JNICALL Java_com_htq_baidu_ndk_NDKTest_getString (JNIEnv * env, jobject …

2017年6月15日 0条评论 358点热度 4人点赞 天问 阅读全文
NDK

安卓ndk开发之java JNI技术

在前面安卓NDK开发之Hello JNI中,我们讲解了安卓上的ndk开发的一般流程,初步了解了jni技术。那么ndk和jni到底是什么关系呢?事实上jni和ndk没什么关系,但ndk和jni有关系,准确的说是ndk开发需要用到jni技术。就像水和鱼没关系,但是鱼和水有关系,鱼需要在水中生存。 JNI(Java Native Interface)技术是java本身提供的技术,是用来在java层和c/c++层进行通信的接口,和安卓没啥关系。 NDK(Native Development Kit)是谷歌为了更好的支持安卓…

2017年6月14日 0条评论 935点热度 4人点赞 天问 阅读全文

天问

追梦追自由,穷则独善其身,达则兼济天下

最新 热点 随机
最新 热点 随机
【插件化】从插件化看Activity的启动流程 你真的会用View的post方法吗 【设计模式之】适配器模式 【设计模式之】代理模式与动态代理技术(JDK自带与CGLIB)
llvm中间语言IR介绍 llvm IR指令与llvm开发中对应的类与API 【设计模式之】策略模式 python文件操作之zip包操作
小伙伴们(排名不分先后)

尼古拉斯赵四

布兰柯基

 

COPYRIGHT © 2022 天问 ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang