Native讲座--入门

来源:互联网 发布:主流软件开发语言 编辑:程序博客网 时间:2024/05/22 23:08

android native开发

                        rockPlayer李亮

 

 

背景:android中java开发已经可以满足绝大部分的需求。

应用场景(什么需要native开发)

1.非常非常强调性能的场合。(计算量很大)

2.移植。(将C/C++的游戏代码用在java上)

3.软件保护。(native层做软件保护,很好的反编译)

Native调用原理:android应用层通过标准的Jni接口调用native层。Native层被编译成.so文件。

Native代码需要考虑CPU的类型。(x86,arm,mips,因为这三种支持各自不同的代码集)

Google Native开放了一些库接口供调用。

Libc,libm,liblog等

OpenGL ES

NativeActivity.在native层创建一个activity(目前很少使用。)

 

NDK的工具

Ndk-build 把C/C++代码编译成.so文件。

Ndk-gdb 调试C/C++代码。

Ndk-stack 跟踪调试栈的使用情况。

Logging支持:-llog 跟Log.e差不多。

必要的构建描述:

Application.mk (可选)

Android.mk (必需)

Jni文件夹放native代码。

从ADT20开始增加对native的支持。

点项目-androidTools-Add native Support…

 

建议:初学者:多做项目,多写代码。有一定经验者:静下心,多学新技术,多写代码。

 

android 经典的系统结构图分析

应用层(包含android应用)

     Framework层(提供Api调用接口)

    |

Librarie层(Native层提供C/C++具体实现)

    |

    |

Linux Kernel

0 0
原创粉丝点击