読者です 読者をやめる 読者になる 読者になる

Happy My Life

日常とか技術とか

Android NDKネイティブプログラミング第2版が出ました!

ということで、NDK本の2版が12/20に書店に並びはじめました。初めての改訂本!



前書と比較しての大きな変更点は以下の通り。

あとは、文章やサンプルコードなども細々と変更しています。これは、前書を出版した後に頂いた感想や、自分が書いた本で調べ物をした時に感じたことなどを反映してます。そういう意味では、ただ最新のAndroid NDKに対応しただけの本ではないですよー、ということで。目次は次のとおり。

目次

前書からの違いを知りたい人も多いはず。そこで、追加箇所、変更箇所を色分けしたのが下の表。購入の参考にしていただければ、と。

赤色 : 追加項目
青色 : 変更項目

Chapter 1 Android NDKとは

01.01 本書について
01.02 開発ライブラリについて
01.03 実行ファイルが生成されるまで
01.04 Android NDK付属のライブラリ
01.05 Androidの内部構造(レイヤー)
01.06 アプリケーション実行環境について
01.07 Android NDKのメリット/デメリット
01.08 セットアップ
01.09 プロジェクトを作成する
01.10 まとめ

Chapter 2 JNI(Java Native Interface)

02.01 JNIとは
02.02 メモリ管理
02.03 JNIの規約
02.04 JNIオブジェクト参照
02.05 まとまったデータを扱う
02.06 CheckJNI
02.07 ログ出力
02.08 ネイティブメソッドからJavaのコードを呼ぶ
02.09 JNIHelpを利用する
02.10 まとめ

Chapter 3 NativeActivity

03.01 NativeActivityとは
03.02 NativeActivityとゲーム
03.03 イベント
03.04 NativeActivityの制約
03.05 ノンブロック処理
03.06 NativeActivityGlue
03.07 まとめ

Chapter 4 OpenGL|ES

04.01 OpenGLOpenGL|ES
04.02 描画対象
04.03 AndroidにおけるOpenGL|ES
04.04 サンプルコード(OpenGL|ES 1.1)
04.05 サンプルコード(OpenGL|ES 2.0)
04.06 AndroidBitmap
04.07 まとめ

Chapter 5 サウンド

05.01 OpenSL|ESについて
05.01.01 OpenSL|ES for Android
05.01.02 処理の流れ
05.01.03 制御できる音の種類
05.02 サウンドフォーマット
05.03 再生と録音
05.04 データソース
05.05 Android extensions
05.06 エフェクト
05.07 サンプルコード
05.08 設定
05.09 制約について
05.10 まとめ

Chapter 6 マルチメディア

06.01 OpenMAX AL
06.02 OpenMAX AL for Android
06.03 サンプルコード
06.04 Android.mkファイル
06.05 まとめ

Chapter 7 入出力(センサー、キーボード、ファイル)

07.01 センサーライブラリ
07.02 タッチイベント
07.03 キー入力
07.04 センサー
07.05 Configuration
07.06 Assets

Chapter 8 ツール(コンパイラ、デバッガ)

08.01 toolchain
08.02 C++の機能
08.03 C++ランタイムライブラリ
08.04 gcc拡張機能
08.05 外部モジュールの参照
08.06 定数
08.07 ndk-build
08.08 ndk-stack
08.09 CCache
08.10 独立したtoolchain
08.11 ndk-gdb
08.12 Eclipseからデバッグする
08.13 まとめ

Chapter 9 アーキテクチャ

09.01 サポートしているアーキテクチャ
09.02 ARMプロセッサ
09.03 Cortex-Aシリーズ
09.04 アーキテクチャの構成
09.05 メモリ
09.07 ABI
09.08 CPUアーキテクチャ、機能を判別する
09.09 まとめ

Chapter 10 最適化

10.01 最適化の手順
10.02 問題箇所の特定
10.03 最適化の手法
10.04 実行バイナリの実行効率の向上
10.05 キャッシュヒット率の向上
10.06 gccによる最適化
10.07 グラフィックスの最適化
10.08 小数演算
10.09 まとめ

Chapter 11 NEON

11.01 ARM命令とNEON命令
11.02 NEON命令の詳細
11.03 NEON命令を利用する
11.04 ベクトル化
11.05 まとめ

Chapter 12 OSSライブラリを利用する

12.01 開発環境設定
12.02 libpng
12.03 Lua
12.04 まとめ

Chapter 13 リファレンス

13.01 ndk-buildコマンド
13.02 Android.mkファイル
13.03 Application.mkファイル

サンプルコード

サンプルコードは、http://github.com/demuyan/NDKBook_2ndにあります。

ということで

よろしくお願いいたしますー