Android C++高级编程:使用NDK

Android C++高级编程:使用NDK
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [美] (Onur Cinar) , , ,
2014-01
版次: 1
ISBN: 9787302343011
定价: 59.80
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 344页
字数: 548千字
正文语种: 简体中文
原版书名: Pro Android C++ with the NDK
284人买过
  •   Android是移动电话市场的主要角色而且其市场份额正在持续增长。它是一个完整的、开放的、免费的移动平台,该平台给移动应用开发者提供了无限的机会。
      虽然Android平台的官方程序语言是Java,但应用开发者不限于仅使用Java技术。
      Android允许应用开发者通过Android原生开发包(NDK)使用诸如C和C++之类的原生代码语言实现他们的部分应用。《移动开发经典丛书·Android C++高级编程:使用NDK》中我们将学习如何用AndroidNDK通过原生代码语言去实现自己的Android应用中对性能要求较高的部分。
      《移动开发经典丛书·Android C++高级编程:使用NDK》介绍了原生应用开发、可用的原生API以及故障排除技术的详细叙述,包括用按步骤的指导和屏幕截图以帮助Android开发人员迅速达到开发原生应用的目的。
      主要内容:
      在主要的操作系统上安装Android原生开发环境。
      使用Eclipse集成开发环境开发原生代码。
      使用Java原生接口(JNI)将原生代码与Java代码连接。
      用SWIG自动生成JNI代码。
      用POSIX和Java线程开发多线程原生应用。
      用POSIXsockets开发网络原生应用。
      用logging、GDB和Eclipse调试器调试原生代码。
      用Valgrind分析内存问题。
      用GProf测试应用性能。
      用SIMD/NEON优化原生代码。   Onur Cinar,有超过17年的移动和通信领域大规模复杂软件项目的设计、开发和管理经验。他的专业技能包括VoIP、视频通信、移动应用程序、网格计算和不同平台上的网络技术。从Android平台问世他就一直积极从事这方面的工作。他是Apress出版的Android Apps with Eclipse一书的作者。他在美国宾州费城Drexel大学获得计算机科学理学学士学位。现就职于微软Skype分部,任Android平台的Skype客户端高级产品工程经理。 第1章 Android平台上的C++入门
    1.1 Microsoft Windows
    1.1.1 在Windows平台上下载并安装JDK开发包
    1.1.2 在Windows平台上下载并安装ApacheANT
    1.1.3 在Windows平台上下载并安装AndroidSDK
    1.1.4 在Windows平台上下载并安装Cygwin
    1.1.5 在Windows平台上下载并安装AndroidNDK
    1.1.6 在Windows平台上下载并安装Eclipse
    1.2 AppleMacOSX
    1.2.1 在Mac平台上安装Xcode
    1.2.2 验证Mac平台的Java开发包
    1.2.3 验证Mac平台上的ApacheANT
    1.2.4 验证GNUMake
    1.2.5 在Mac平台上下载并安装AndroidSDK
    1.2.6 在Mac平台上下载并安装AndroidNDK
    1.2.7 在Mac平台上下载并安装Eclipse
    1.3 UbuntuLinux
    1.3.1 检查GNUC库版本
    1.3.2 激活在64位系统上支持32位的功能
    1.3.3 在Linux平台上下载并安装Java开发工具包(JDK)
    1.3.4 在Linux平台上下载并安装ApacheANT
    1.3.5 在Linux平台上下载并安装GNUMake
    1.3.6 在Linux平台上下载并安装AndroidSDK
    1.3.7 在Linux平台上下载并安装AndroidNDK
    1.3.8 在Linux平台上下载并安装Eclipse
    1.4 下载并安装ADT
    1.4.1 安装Android平台包
    1.4.2 配置模拟器
    1.5 小结

    第2章 深入了解AndroidNDK
    2.1 AndroidNDK提供的组件
    2.2 AndroidNDK的结构
    2.3 以一个示例开始
    2.3.1 指定AndroidNDK的位置
    2.3.2 导入示例项目
    2.3.3 向项目中添加原生支持
    2.3.4 运行项目
    2.3.5 用命令行对项目进行构建
    2.3.6 检测AndroidNDK项目的结构
    2.4 构建系统
    2.4.1 Android.mk
    2.4.2 Application.mk
    2.5 使用NDK-Build脚本
    2.6 排除构建系统故障
    2.7 小结

    第3章 用JNI实现与原生代码通信
    3.1 什么是JNI
    3.2 以一个示例开始
    3.2.1 原生方法的声明
    3.2.2 加载共享库
    3.2.3 实现原生方法
    3.3 数据类型
    3.3.1 基本数据类型
    3.3.2 引用类型
    3.4 对引用数据类型的操作
    3.4.1 字符串操作
    3.4.2 数组操作
    3.4.3 NIO操作
    3.4.4 访问域
    3.4.5 调用方法
    3.4.6 域和方法描述符
    3.5 异常处理
    3.5.1 捕获异常
    3.5.2 抛出异常
    3.6 局部和全局引用
    3.6.1 局部引用
    3.6.2 全局引用
    3.6.3 弱全局引用
    3.7 线程
    3.7.1 同步
    3.7.2 原生线程
    3.8 小结

    第4章 使用SWIG自动生成JNI代码
    4.1 什么是SWIG
    4.2 安装
    4.2.1 Windows平台上SWIG的安装
    4.2.2 在MacOSX下安装
    4.2.3 在UbuntuLinux下安装
    4.3 通过示例程序试用SWIG
    4.3.1 接口文件
    4.3.2 在命令行方式下调用SWIG
    4.3.3 将SWIG集成到Android构建过程中
    4.3.4 更新Activity.
    4.3.5 执行应用程序
    4.3.6 剖析生成的代码
    4.4 封装C语言代码
    4.4.1 全局变量
    4.4.2 常量
    4.4.3 只读变量
    4.4.4 枚举
    4.4.5 结构体
    4.4.6 指针
    4.5 封装C++代码
    4.5.1 指针、引用和值
    4.5.2 默认参数
    4.5.3 重载函数
    4.5.4 类
    4.6 异常处理
    4.7 内存管理
    4.8 从原生代码中调用Java
    4.8.1 异步通信
    4.8.2 启用Directors
    4.8.3 启用RTTI
    4.8.4 重写回调方法
    4.8.5 更新HeIIojniActivity
    4.9 小结

    第5章 日志、调试及故障处理
    5.1 日志
    5.1.1 框架
    5.1.2 原生日志API
    5.1.3 受控制的日志
    5.1.4 控制台日志
    5.2 调试
    5.2.1 预备知识
    5.2.2 调试会话建立
    5.2.3 建立调试示例
    ……
    第6章 BionicAPI入门
    第7章 原生线程
    第8章 POSIXSocketAPI:面向连接的通信
    第9章 POSIXSocketAPI:无连接的通信
    第10章 POSIXSocketAPI:本地通信
    第11章 支持C++
    第12章 原生图形API
    第13章 原生音频API
    第14章 程序概要分析和NEON优化
  • 内容简介:
      Android是移动电话市场的主要角色而且其市场份额正在持续增长。它是一个完整的、开放的、免费的移动平台,该平台给移动应用开发者提供了无限的机会。
      虽然Android平台的官方程序语言是Java,但应用开发者不限于仅使用Java技术。
      Android允许应用开发者通过Android原生开发包(NDK)使用诸如C和C++之类的原生代码语言实现他们的部分应用。《移动开发经典丛书·Android C++高级编程:使用NDK》中我们将学习如何用AndroidNDK通过原生代码语言去实现自己的Android应用中对性能要求较高的部分。
      《移动开发经典丛书·Android C++高级编程:使用NDK》介绍了原生应用开发、可用的原生API以及故障排除技术的详细叙述,包括用按步骤的指导和屏幕截图以帮助Android开发人员迅速达到开发原生应用的目的。
      主要内容:
      在主要的操作系统上安装Android原生开发环境。
      使用Eclipse集成开发环境开发原生代码。
      使用Java原生接口(JNI)将原生代码与Java代码连接。
      用SWIG自动生成JNI代码。
      用POSIX和Java线程开发多线程原生应用。
      用POSIXsockets开发网络原生应用。
      用logging、GDB和Eclipse调试器调试原生代码。
      用Valgrind分析内存问题。
      用GProf测试应用性能。
      用SIMD/NEON优化原生代码。
  • 作者简介:
      Onur Cinar,有超过17年的移动和通信领域大规模复杂软件项目的设计、开发和管理经验。他的专业技能包括VoIP、视频通信、移动应用程序、网格计算和不同平台上的网络技术。从Android平台问世他就一直积极从事这方面的工作。他是Apress出版的Android Apps with Eclipse一书的作者。他在美国宾州费城Drexel大学获得计算机科学理学学士学位。现就职于微软Skype分部,任Android平台的Skype客户端高级产品工程经理。
  • 目录:
    第1章 Android平台上的C++入门
    1.1 Microsoft Windows
    1.1.1 在Windows平台上下载并安装JDK开发包
    1.1.2 在Windows平台上下载并安装ApacheANT
    1.1.3 在Windows平台上下载并安装AndroidSDK
    1.1.4 在Windows平台上下载并安装Cygwin
    1.1.5 在Windows平台上下载并安装AndroidNDK
    1.1.6 在Windows平台上下载并安装Eclipse
    1.2 AppleMacOSX
    1.2.1 在Mac平台上安装Xcode
    1.2.2 验证Mac平台的Java开发包
    1.2.3 验证Mac平台上的ApacheANT
    1.2.4 验证GNUMake
    1.2.5 在Mac平台上下载并安装AndroidSDK
    1.2.6 在Mac平台上下载并安装AndroidNDK
    1.2.7 在Mac平台上下载并安装Eclipse
    1.3 UbuntuLinux
    1.3.1 检查GNUC库版本
    1.3.2 激活在64位系统上支持32位的功能
    1.3.3 在Linux平台上下载并安装Java开发工具包(JDK)
    1.3.4 在Linux平台上下载并安装ApacheANT
    1.3.5 在Linux平台上下载并安装GNUMake
    1.3.6 在Linux平台上下载并安装AndroidSDK
    1.3.7 在Linux平台上下载并安装AndroidNDK
    1.3.8 在Linux平台上下载并安装Eclipse
    1.4 下载并安装ADT
    1.4.1 安装Android平台包
    1.4.2 配置模拟器
    1.5 小结

    第2章 深入了解AndroidNDK
    2.1 AndroidNDK提供的组件
    2.2 AndroidNDK的结构
    2.3 以一个示例开始
    2.3.1 指定AndroidNDK的位置
    2.3.2 导入示例项目
    2.3.3 向项目中添加原生支持
    2.3.4 运行项目
    2.3.5 用命令行对项目进行构建
    2.3.6 检测AndroidNDK项目的结构
    2.4 构建系统
    2.4.1 Android.mk
    2.4.2 Application.mk
    2.5 使用NDK-Build脚本
    2.6 排除构建系统故障
    2.7 小结

    第3章 用JNI实现与原生代码通信
    3.1 什么是JNI
    3.2 以一个示例开始
    3.2.1 原生方法的声明
    3.2.2 加载共享库
    3.2.3 实现原生方法
    3.3 数据类型
    3.3.1 基本数据类型
    3.3.2 引用类型
    3.4 对引用数据类型的操作
    3.4.1 字符串操作
    3.4.2 数组操作
    3.4.3 NIO操作
    3.4.4 访问域
    3.4.5 调用方法
    3.4.6 域和方法描述符
    3.5 异常处理
    3.5.1 捕获异常
    3.5.2 抛出异常
    3.6 局部和全局引用
    3.6.1 局部引用
    3.6.2 全局引用
    3.6.3 弱全局引用
    3.7 线程
    3.7.1 同步
    3.7.2 原生线程
    3.8 小结

    第4章 使用SWIG自动生成JNI代码
    4.1 什么是SWIG
    4.2 安装
    4.2.1 Windows平台上SWIG的安装
    4.2.2 在MacOSX下安装
    4.2.3 在UbuntuLinux下安装
    4.3 通过示例程序试用SWIG
    4.3.1 接口文件
    4.3.2 在命令行方式下调用SWIG
    4.3.3 将SWIG集成到Android构建过程中
    4.3.4 更新Activity.
    4.3.5 执行应用程序
    4.3.6 剖析生成的代码
    4.4 封装C语言代码
    4.4.1 全局变量
    4.4.2 常量
    4.4.3 只读变量
    4.4.4 枚举
    4.4.5 结构体
    4.4.6 指针
    4.5 封装C++代码
    4.5.1 指针、引用和值
    4.5.2 默认参数
    4.5.3 重载函数
    4.5.4 类
    4.6 异常处理
    4.7 内存管理
    4.8 从原生代码中调用Java
    4.8.1 异步通信
    4.8.2 启用Directors
    4.8.3 启用RTTI
    4.8.4 重写回调方法
    4.8.5 更新HeIIojniActivity
    4.9 小结

    第5章 日志、调试及故障处理
    5.1 日志
    5.1.1 框架
    5.1.2 原生日志API
    5.1.3 受控制的日志
    5.1.4 控制台日志
    5.2 调试
    5.2.1 预备知识
    5.2.2 调试会话建立
    5.2.3 建立调试示例
    ……
    第6章 BionicAPI入门
    第7章 原生线程
    第8章 POSIXSocketAPI:面向连接的通信
    第9章 POSIXSocketAPI:无连接的通信
    第10章 POSIXSocketAPI:本地通信
    第11章 支持C++
    第12章 原生图形API
    第13章 原生音频API
    第14章 程序概要分析和NEON优化
查看详情
系列丛书 / 更多
Android C++高级编程:使用NDK
Android 4高级编程(第3版)
[美]Reto Meier 著;佘建伟、赵凯 译
Android C++高级编程:使用NDK
iOS Auto Layout开发秘籍(第2版)
[美]Erica Sadun 著;孟立标 译
Android C++高级编程:使用NDK
Android Studio实战 快速、高效地构建Android应用
[美]Adam、Clifton Craig 著;靳晓辉、张文书 译
Android C++高级编程:使用NDK
Swift开发秘籍
[美]Erica、Sadun 著;李泽鲁 译
Android C++高级编程:使用NDK
iOS cocos2d 2游戏开发实战
[美]史蒂芬(Steffen Itterheim)、[德]勒夫(Andreas L w) 著;同济大学苹果俱乐部 译
Android C++高级编程:使用NDK
ios数据库应用高级编程(第2版)
[美]艾烈希(Patrick Alessi) 著;冯宝隆 译
Android C++高级编程:使用NDK
iOS 编程入门经典——构建和部署iOS 7应用(第4版)
[美]Nick Harris 著;冯宗翰 译
Android C++高级编程:使用NDK
Android 6开发秘籍(第5版)
[美]Joseph、Annuzzi、Jr.、Lauren、Darcey 著
Android C++高级编程:使用NDK
iOS网络高级编程:iPhone和iPad的企业应用开发
[美]考克斯(Jack Cox)、[美]琼斯(Nathan Jones)、[美]舒姆斯基(John Szumski) 著;张龙 译
Android C++高级编程:使用NDK
Android 4.1 游戏高级编程(第3版)
[美]席尔瓦(Vladimir Silva) 著;杨丰盛、谢明辉、蔡达毅 译
Android C++高级编程:使用NDK
Android 4.X开发完全上手:手把手构建完整Android App范例
[美]James、Justin McLean 著;张永基 译
Android C++高级编程:使用NDK
使用iOS7和Xcode5开发移动与平板应用
[美]Maurice、Erica、Rood Strougo 著;张杰、欧阳柳 译
您可能感兴趣 / 更多
Android C++高级编程:使用NDK
无辜者的谎言(相信我!看到结局你一定会头皮发麻;全美读者推荐的悬疑神作,GOODREADS高分作品)
[美]A.R.托雷 著;梁颂宇 译;星文文化 出品
Android C++高级编程:使用NDK
孩子,把你的手给我1:怎么说孩子才爱听,怎么教孩子才肯学?帮助每一位3-12岁孩子的父母结束与孩子的所有冲突!
[美]海姆·G.吉诺特
Android C++高级编程:使用NDK
哲学、历史与僭政——重审施特劳斯与科耶夫之争
[美]弗罗斯特(Bryan-Paul Frost) 编;[美]伯恩斯(Timothy W. Burns)
Android C++高级编程:使用NDK
怎样做成大事
[美]丹·加德纳(Dan Gardner) 著;贾拥民 译;湛庐文化 出品;[丹麦]傅以斌(Bent Flyvbjerg)
Android C++高级编程:使用NDK
1200年希腊罗马神话
[美]伊迪丝·汉密尔顿
Android C++高级编程:使用NDK
爱情心理学(新编本)
[美]罗伯特·J. 斯腾伯格 (美)凯琳·斯腾伯格 倪爱萍 译
Android C++高级编程:使用NDK
黄金圈法则
[美]西蒙·斯涅克 著;磨铁文化 出品
Android C++高级编程:使用NDK
最后一章
[美]厄尼·派尔
Android C++高级编程:使用NDK
汤姆·索亚历险记 彩图注音版 一二三四年级5-6-7-8-9岁小学生课外阅读经典 儿童文学无障碍有声伴读世界名著童话故事
[美]马克 吐温
Android C++高级编程:使用NDK
富兰克林自传 名家全译本 改变无数人命运的励志传奇 埃隆马斯克反复推荐 赠富兰克林签名照及精美插图
[美]本杰明·富兰克林 著;李自修 译
Android C++高级编程:使用NDK
汤姆素亚历险记:中小学生课外阅读快乐读书吧 儿童文学无障碍有声伴读世界名著童话故事
[美]马克·吐温
Android C++高级编程:使用NDK
国际大奖图画书系列 共11册(小老鼠的恐惧的大书,大灰狼,红豆与菲比,别烦我,下雪了 ,穿靴子的猫 ,先有蛋,绿 ,特别快递,如果你想看鲸鱼 ,一个部落的孩子 ) 麦克米伦世纪
[美]莱恩·史密斯 (英)埃米莉·格雷维特 (美)劳拉·瓦卡罗·等/文 (英)埃米莉·格雷维特 等/图 彭懿 杨玲玲 阿甲 孙慧阳 白薇 译