详解Android 2.3 NDK的新特性

移动开发 Android
前不久我们刚刚介绍了Android R5 NDK下载及安装的教程,本文我们将介绍Android R5 NDK的新特性也就是“Android 2.3 NDK的新特性”。

这个版本的NDK包括了很多新的API,可以用于开发更多的游戏或相似的应用程序。通过这些API,开发人员可以直接访问Events,audio,graphics,windows,assets和storage,也可以利用新的NativeActivity类用本地代码来实现Android应用程序。更多的详细信息可以参考NDK中包含的CHANGES.HTML文档。

更新包括

  • 增加本地activities的支持,以用于使用本地代码实现Android应用

对以下特性增加本地代码支持

  • 输入部分(例如键盘或触摸屏)
  • 传感器数据访问(加速度传感器,方向传感器,陀螺仪等)
  • 用于等待输入和传感器events的事件循环
  • 窗口和surface子系统
  • 基于OpenSL ES标准的音频API,支持平台音效的录音和回放控制
  • 访问.apk文件中的资源
  • 包含了更利于代码生成的新的工具链(基于GCC 4.4.3),可以作为通过./configure和make方式生成代码的开发人员的标准交叉编译工具,在docs/STANDALONE-TOOLCHAIN.html文件中可以找到详细说明。GCC 4.4.0仍然存在,但4.2.1已经被移除。
  • 增加了预编译静态库和共享库(见docs/PREBUILTS.html文档)的支持,以及模块导入导出的支持,更易于共享和重用第三方的模块。
  • 作为辅助模块提供了默认的C++ STL的实现(基于STLport),可以被用于静态库或共享库(详细的使用示例参见sources/android/stlport/README),如果想要代替默认的C++ STL实现,可以编译STLport(静态库或共享库)和GNU libstdc++(只能是静态库)。C++异常和RTTI在默认的STL实现中还没被支持,更多信息可参见docs/CPLUSPLUS-SUPPORT.HTML文件。
  • 包含了改进的cpufeatures辅助库以用于提供准确的CPU类型(很多使用ARMv6的设备以前被报成了ARMv7 CPU),提醒开发保山,使用这个库需要重新编译应用程序然后上传到应用商店。
  • 增加了EGL库用于创建和管理OpenGL ES纹理和服务
  • 增加了新的示例程序native-plasma和native-activity用来演示如何编写本地的activity。
  • 包含了很多Bug修复和小的提升,更多变更可参见docs/CHANGES.html文档

本文转载自文斌的专栏

【编辑推荐】

  1. Windows Phone 7 免费线下培训火热报名中
  2. 详解谷歌官方教程 Android R5 NDK下载及安装
  3. Android NDK具体作用讲解
  4. Android NDK环境创建方法简介
  5. Android NDK初探 你也可以做移动开发
责任编辑:佚名 来源: 文斌专栏
相关推荐

2013-07-29 15:13:35

2011-09-14 10:11:35

Android 2.3

2012-10-31 09:46:46

Android 4.2

2010-12-07 08:57:14

Android 2.3

2009-07-27 09:46:28

Silverlight

2009-06-29 17:42:03

Tapestry5新特

2012-01-09 16:00:56

2013-10-29 16:50:50

Android 4.4特性

2010-12-10 10:16:21

Android 2.3

2024-04-18 08:04:47

ElectronChrome升级

2010-06-23 15:29:52

Eclipse 3.6Java

2014-07-15 14:12:17

Java8

2019-03-05 15:03:09

Android Q安卓系统功能

2013-11-04 17:28:44

Android

2019-10-31 15:37:29

Android Q

2009-04-08 09:29:34

SQL Server新特性Resource Go

2023-07-03 08:20:35

MySQL窗口函数

2009-12-30 10:21:36

.NET 4.0

2014-04-16 07:43:31

Java 8JRE

2010-03-09 09:19:58

AndroidNDK
点赞
收藏

51CTO技术栈公众号