Android NDK (What is the NDK?) 和訳 2

前回の続き。
例によって私の和訳なので、原文も参照してくださると助かります。
不安なところとかは、引用してますが。


これはAndroid NDK, Revision 5 (December 2010)時点の文章に対する翻訳です。
原文 : http://developer.android.com/intl/ja/sdk/ndk/overview.html




Documentation


NDKパッケージには、あなたのAndroidアプリケーション用の共有ライブラリを作る方法と、
利用されるNDKの機能を記載するドキュメンテーションセットを含みます。
このリリースにおいて、ドキュメンテーションはダウンロード可能なNDKパッケージだけで提供されます。
あなたはドキュメンテーション/docs/ ディレクトリで見つけることが出来ます。

ドキュメントにはこれらのファイルが含まれます :

・INSTALL.HTML
 NDKのインストール方法及び、あなたのホストシステム用に設定する方法を記述します。

・OVERVIEW.HTML
 NDKの持つ機能と、使用方法の概要を提供します。

ANDROID-MK.HTML
 あなたが編集したいネイティブソースを定義する「Android.mk」ファイルの使用方法を記述します。

・APPLICATION-MK.HTML
 あなたのAndroidアプリケーションで必要なネイティブソースを記述する
 「Application.mk」ファイルの使用方法を記述します。

・CPLUSPLUS-SUPPORT.HTML
 AndroidNDKで提供されるC++サポートについて記述します。

・CPU-ARCH-ABIS.HTML
 サポートされたCPUアーキテクチャの説明と、これらをターゲットとする方法について。

・CPU-FEATURES.HTML
 あなたのアプリケーションコードを実行する際にターゲットデバイス
 CPU familyとオプションの特徴を判別するcpufeatures共有ライブラリの説明。

・CPU-ARM-NEON.HTML
 ARM NEON/VFPv3-D32命令セットでビルドする方法の説明

・CHANGES.HTML
 これまで全てのリリースで行われたNDKの変更点を全てリスト化したもの。

・DEVELOPMENT.HTML
 NDKを修正した場合に、リリースパッケージを生成する方法を記述します。

・HOWTO.HTML
 NDK開発と関連したcommon tasks(共通関数?) に関する情報。

・IMPORT-MODULE.HTML
 モジュールを共有して、再利用する方法を記述します。

・LICENSES.HTML
 Android NDKで使用している色々なオープンソースのライセンスに関する情報。

・NATIVE-ACTIVITY.HTML
 Native Activityの使い方を記述します。

・NDK-BUILD.HTML
 「ndk-build」スクリプトの使用方法を記述します。

・NDK-GDB.HTML
 ネイティブコードでデバッガーを使用する方法を記述します。

・PREBUILTS.HTML
 共有で静的な前もって作成されたライブラリが機能する方法に関する情報。

・STANDALONE-TOOLCHAIN.HTML
 独立型コンパイラ(still in beta)としてAndroid NDK toolchainを使う方法を記述します。

・SYSTEM-ISSUES.HTML
 あなたがNDKを使って開発しているならば、気付いているはずである
 Androidシステムイメージの既知の問題。

・STABLE-APIS.HTML
 NDKでヘッダによって提供される安定したAPIのリスト。


その上、あなたがNDKを使って開発しているならば、パッケージはあなたが気付いている
はずであるAndroidプラットフォームを備えているbionic C ライブラリに関する詳細な情報を含みます。
このドキュメンテーションは、/docs/system/libc/ ディレクトリで見つけることが出来ます :


OVERVIEW.HTML
 bionic Cライブラリの概要と、それが提供する機能について解説します。




Sample applications

NDKには、あなたのAndroidアプリケーションでネイティブコードを
使う方法を例示するサンプルアプリケーションを含みます :

hello-jni
 共有ライブラリと、そのときに実装されるネイティブメソッドから文字列を読み込む
 簡単なアプリケーションを、アプリケーションUIで表示します。

two-libs
 動的に共有ライブラリを呼び出し、ライブラリから提供される
 ネイティブメソッドを呼ぶ簡単なアプリケーション。
 この場合、メソッドは共有ライブラリのそばでインポートされる静的ライブラリで実装されます。

san-angeles
 ネイティブOpenGL ES APIによって3Dグラフィックスをレンダリングする簡単なアプリケーション。
 その一方で、GLSurfaceViewオブジェクトでActivityのライフサイクルを管理します。

hello-gl2
 OpenGL ES 2.0のvertexとfargment shadersを使って三角形をレンダリングする簡単なアプリケーション。

hello-neon
 CPUでサポートされていれば、実行時にNEON intrinsicsを使ってCPUの性能を
 チェックするためにcpufeaturesライブラリを使う方法を示す簡単なアプリケーション。
 具体的には、アプリケーションはそれをサポートするデバイスのために
 FIRフィルタループを使った2つの小さなベンチマークC言語バージョンとNEON
 最適化されたバージョンをインプリメントします。

bitmap-plasma
 この簡単なアプリケーションでは、ネイティブコードで
 Android Bitmap オブジェクトのピクセルバッファにアクセスし、
 昔ながらの"plasma"効果を生成して使う方法を示します。

native-activity
 Native Activityを作るためにネイティブアプリケーションと
 結びついた静的ライブラリを使う方法を示す簡単なアプリケーション。

native-plasma
 Native Activityにプラズマのbitmapを組み込んだバージョン。


それぞれのサンプルのために、NDKでは対応するCソースコード
必要なAndroid.mk、Application.mkファイルを読み込みます。
これらはそれぞれ /samples/ 以下に配置されています。
また、対応するソースコード/samples//jni/ 以下で見つけることが出来ます。


/samples// ディレクトリで「ndk-build」コマンドを実行することで
サンプルアプリ用の共有ライブラリを作成することが出来ます。
共有ライブラリは、「ARMv5TE機械語」の場合/samples//libs/armeabi/に、
「ARMv7機械語」の場合/samples//libs/armeabi-v7a/ に生成されます。



次に、共有ライブラリを使うサンプルAndroidアプリケーションをビルドします :


・あなたがADTとElicpseを連携させた環境で開発しているならば、 「New Project」ウィザードから
 「new Android project」を選択し、"Import from Existing Source" オプションから利用したいサンプルソース
 /apps//project/ からインポートしてください。
 その後、AVDを設定して必要に応じてアプリケーションをエミュレーターで build/run してください。
 Elicpseで新しいAndroidプロジェクトを作成する方法の詳細は、Elicpseの「Developing」を見てください。


・あなたがAntを使って開発しているならば、/apps//project/にある
 サンプルプロジェクトからビルドファイルを作るために android tool を使ってください。
 その後、AVDを設定して必要に応じてアプリケーションをエミュレーターで実行してください。
 詳細は、開発に利用するIDEの「Developing」を見てください。