博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android 下 JNI 开发
阅读量:4046 次
发布时间:2019-05-25

本文共 1319 字,大约阅读时间需要 4 分钟。

Day1

JNI简介-25

01_什么是JNI

1、JNI(Java Native Interface) java本地开发接口

 

  1. JNI 是一个协议

 

  1. 有了这个协议可以使Java代码和C/C++代码相互调用.

 

 

画图理解:

02_为什么用JNI

1、JNI扩展了java 虚拟机的能力, 驱动开发  (wifi-hotspot) 2.3 无线热点共享 

2、Native code效率高,数学运算,实时渲染的游戏上,音视频处理 (极品飞车,opengl,ffmpeg)

3、复用代码 (文件压缩,人脸识别…)

4、特殊的业务场景

 

 

03_怎么用JNI

1.C/C++语言

2.掌握java jni流程

3.NDK (native develop kits ) 

 

C语言入门

 

1、课程目标

课程结束大家能看懂c代码.会读会调用.

安排:

基本数据类型

基本输入输出函数

数组

指针

结构体

枚举

 

1、C语言第一个程序-13

 

 

A:第一个C程序

 

A:安装Dev-c++工具

B:演示编译运行

  C语言代码在window系统编译后生成.exe文件

 Visual C++

 

C :代码注释

 

 

 

//include 相当于Java中的 import导包;

//.h文件是C语言中的头文件,里面申明很多函数。

//stdio.h: standard input&output 标准的输入输出流

#include <stdio.h>

//导入stdlib.h c语言的标准库。

#include <stdlib.h>

//主程序入口 public static void main(String args[]) {}

main()

{     

      // 输出日志。相当于Java中的 System.out.print("Hello world ! \n")

      printf("Hello world !\n");

      //dos命令行执行一个命令:pause

      system("pause");

}

 

 

D:演示调用window中的一下软件命令,加深system("pause");的理解

 

 在控制台演示:

 调用画图工具:mspaint

 调用计算器:calc

 调用服务:services.msc

 

 

system("calc");//调出计算器

system("services.msc"); //调出服务列表

 

E:演示调用Java编译好的.class文件

 

public class Hello{

    public static void main(String []args){

     System.out.println("Hello from java !!!");

    }

进入目录下:cd /d D:\JNI\day1\coder

查看目录下有什么:dir

编译命令:javac Hello.java

执行命令:java Hello

 

 system("java Hello");

 直接运行报错,需要把Hello.class文件添加到classpath环境变量中

 验证:打开doc命令行:java Hello

 Dev-c++工具关闭退出后才起作用。

 

本教程由尚硅谷教育大数据研究院出品,如需转载请注明来源。

你可能感兴趣的文章
linux安装usb wifi接收器
查看>>
多线程使用随机函数需要注意的一点
查看>>
getpeername,getsockname
查看>>
让我做你的下一行Code
查看>>
浅析:setsockopt()改善程序的健壮性
查看>>
关于对象赋值及返回临时对象过程中的构造与析构
查看>>
VS 2005 CRT函数的安全性增强版本
查看>>
SQL 多表联合查询
查看>>
Visual Studio 2010:C++0x新特性
查看>>
drwtsn32.exe和adplus.vbs进行dump文件抓取
查看>>
cppcheck c++静态代码检查
查看>>
在C++中使用Lua
查看>>
一些socket的编程经验
查看>>
socket编程中select的使用
查看>>
GitHub 万星推荐:黑客成长技术清单
查看>>
可以在线C++编译的工具站点
查看>>
关于无人驾驶的过去、现在以及未来,看这篇文章就够了!
查看>>
所谓的进步和提升,就是完成认知升级
查看>>
为什么读了很多书,却学不到什么东西?
查看>>
长文干货:如何轻松应对工作中最棘手的13种场景?
查看>>