文档章节

【NDK】NDK概念

2tman
 2tman
发布于 2016/05/18 20:26
字数 317
阅读 68
收藏 4
点赞 2
评论 0

1、ndk是什么

官方地址:

https://developer.android.com/ndk/index.html

2、什么场景可以应用ndk

   1.代码的保护,由于apk的java层代码很容易被反编译,而C/C++库反汇难度较大

    2.在NDK中调用第三方C/C++库,因为大部分的开源库都是用C/C++代码编写的(比如人脸识别、视频、图形)

    3.便于移植,用C/C++写的库可以方便在其他的嵌入式平台上再次使用(比如写了一个底层库,可以供android、ios通用)

3、什么是交叉编译

简单的说,就是在一个平台上生成另一个平台上可执行的代码(比如:x86、arm、mips平台)

4、jni是什么

Java Native Interface,允许java代码和其它语言写的代码进行交互

jni的实现流程

图片里的链接库应该是*.dll或*.so。。。。

5、什么是链接库

包括:静态链接库(什么鬼。。。) 和 动态链接库(.so结尾开头的库。。。)

 

6、make文件介绍

.mk文件,hello-jni demo里有,去找吧~~~

7、ndk开发包目录介绍

我的目录如下:

 

ndk-build:命令,ndk编译。。。

ndk-stack.exe 调试代码非常有用的命令,有助于快速查找bug

© 著作权归作者所有

共有 人打赏支持
2tman
粉丝 11
博文 89
码字总数 31481
作品 0
苏州
Android工程师
【NDK】NDK初入门

下载地址: http://blog.csdn.net/lanergaming/article/details/39855033 http://www.androiddevtools.cn/ 配置ndk: jni头文件需要用到javah命令: 开始生成步骤: 1、 可以发现上面出现找不...

小树coding ⋅ 2016/05/18 ⋅ 0

Android NDK安装

Android NDK安装 前面介绍Windows下Android 开发环境配置,主要是面向JAVA开发环境,对只做APK上层应用开发人员来讲,基本够用了,由于Linux系统的权限限制和Android封装架构限制,很多涉及底...

长平狐 ⋅ 2012/08/29 ⋅ 0

Windows环境下Android NDK环境搭建

前面介绍Windows下Android 开发环境配置,主要是面向JAVA开发环境,对只做APK上层应用开发人员来讲,基本够用了,由于Linux系统的权限限制和Android封装架构限制,很多涉及底层设备、接口、驱...

子曰疯 ⋅ 2013/09/11 ⋅ 0

JNI学习笔记之ndk-build手动编译并集成流程

参考 一天掌握Android JNI本地编程 快速入门 Android开发实践:常用NDK命令行参数 Secrets of Android.mk JNI JNI是啥? JNI(Java Native Interface):Java本地开发接口,JNI是一个协议,用来...

newtrek ⋅ 2017/11/05 ⋅ 0

使用Android Studio 进行NDK开发和调试

尽管Android Studio已经越来越流行了,但很多人还是习惯于Eclipse或源码环境下开发JNI应用。个人认为使用Android Studio作NDK开发是必然趋势,所以本文将简单介绍如何在Android Studio上实现...

xiahuawuyu ⋅ 2016/08/04 ⋅ 0

Android NDK for X86 - 两点解释

今年4月的IDF中,我的同事和我主持过一个实验课,讲解为x86平台进行android NDK应用的开发和移植,实验室都是基础性的,旨在让对NDK并不熟悉的开发人员对此有一个概念并能利用在实际的开发工...

oschina ⋅ 2012/05/13 ⋅ 4

Android NDK开发的一点尝试

写在前面 笔者是一个“原始”的C++开发者,对Java编程虽说不上抵触但也没有C++那么顺手。而且,作为一个游戏引擎,不管是在什么地方,效率总是第一位的,尤其是在移动平台这样资源吃紧的环境...

闪电的蓝熊猫 ⋅ 04/06 ⋅ 0

Android NDK开发简介

最近由于项目的需要,使用到了Android的NDK技术,对项目核心算法跨平台的移植。简答而言,就是使用C对原来的算法进行了改进,并集成到原来的app项目里。 从前的项目一直没有使用NDK进行开发的...

zhiweiofli ⋅ 2013/03/07 ⋅ 0

Linux/Mac 交叉编译 Android 程序

什么是交叉编译呢 简单地说,就是程序的编译的环境和它的运行的环境不一样。即在一个平台上生成另一个平台上的可执行代码。交叉编译的概念主要和嵌入式开发有关。 为何要有交叉编译 主要是由...

音视频直播技术专家 ⋅ 2017/06/29 ⋅ 0

8步教你打开Android之门 NDK入门教程

· 8步教你打开Android之门 NDK入门教程 这是一篇Android NDK开发的入门教程,在这一教程结束后,你将创建你自己的项目,从Java代码简单地调用原生C语言代码。 教程细节 技术:Android SDK、...

庸人谷 ⋅ 2012/11/28 ⋅ 1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

zblog2.3版本的asp系统是否可以超越卢松松博客的流量[图]

最近访问zblog官网,发现zlbog-asp2.3版本已经进入测试阶段了,虽然正式版还没有发布,想必也不久了。那么作为aps纵横江湖十多年的今天,blog2.2版本应该已经成熟了,为什么还要发布这个2.3...

原创小博客 ⋅ 40分钟前 ⋅ 0

聊聊spring cloud的HystrixCircuitBreakerConfiguration

序 本文主要研究一下spring cloud的HystrixCircuitBreakerConfiguration HystrixCircuitBreakerConfiguration spring-cloud-netflix-core-2.0.0.RELEASE-sources.jar!/org/springframework/......

go4it ⋅ 今天 ⋅ 0

二分查找

二分查找,也称折半查找、二分搜索,是一种在有序数组中查找某一特定元素的搜索算法。搜素过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜素过程结束;如果某一特定元素大于...

人觉非常君 ⋅ 今天 ⋅ 0

VS中使用X64汇编

需要注意的是,在X86项目中,可以使用__asm{}来嵌入汇编代码,但是在X64项目中,再也不能使用__asm{}来编写嵌入式汇编程序了,必须使用专门的.asm汇编文件来编写相应的汇编代码,然后在其它地...

simpower ⋅ 今天 ⋅ 0

ThreadPoolExecutor

ThreadPoolExecutor public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, ......

4rnold ⋅ 昨天 ⋅ 0

Java正无穷大、负无穷大以及NaN

问题来源:用Java代码写了一个计算公式,包含除法和对数和取反,在页面上出现了-infinity,不知道这是什么问题,网上找答案才明白意思是负的无穷大。 思考:为什么会出现这种情况呢?这是哪里...

young_chen ⋅ 昨天 ⋅ 0

前台对中文编码,后台解码

前台:encodeURI(sbzt) 后台:String param = URLDecoder.decode(sbzt,"UTF-8");

west_coast ⋅ 昨天 ⋅ 0

实验楼—MySQL基础课程-挑战3实验报告

按照文档要求创建数据库 sudo sercice mysql startwget http://labfile.oss.aliyuncs.com/courses/9/createdb2.sqlvim /home/shiyanlou/createdb2.sql#查看下数据库代码 代码创建了grade......

zhangjin7 ⋅ 昨天 ⋅ 0

一起读书《深入浅出nodejs》-node模块机制

node 模块机制 前言 说到node,就不免得提到JavaScript。JavaScript自诞生以来,经历了工具类库、组件库、前端框架、前端应用的变迁。通过无数开发人员的努力,JavaScript不断被类聚和抽象,...

小草先森 ⋅ 昨天 ⋅ 0

Java桌球小游戏

其实算不上一个游戏,就是两张图片,不停的重画,改变ball图片的位置。一个左右直线碰撞的,一个有角度碰撞的。 左右直线碰撞 package com.bjsxt.test;import javax.swing.*;import j...

森林之下 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部