2011-07-12 9 views
3

デフォルトでAndroid NDKに利用可能なライブラリはありますか?もしそうでなければ、私がそれを自分自身に含める限り、どのようなC++/Cライブラリを使うことができますか?Android NDKでライブラリを利用できますか?

特に、圧縮、暗号化、正規表現、およびsqliteが必要です。私はzlib,crypto++,sqlite(duh!)とboostを使用することを考えていましたが、すでに利用可能な場合は他のものを使用できます。何も利用できない場合

また、内蔵された、あなたは他の何かをお勧めします、その後、私の上記の選択肢(可能な場合、私はパブリック・ドメインを好む、またはBSDまたは類似の)

+0

NDKですべてのものが必要なのはなぜですか?たとえば、SQLiteに出かける場合、JavaからSQLiteにアクセスするよりもパフォーマンスが大幅に向上することはありません。このポイントの詳細については、[ネイティブコードで開発するタイミング](http://developer.android.com/sdk/ndk/overview.html#choosing)を参照してください。 –

+0

@ Ted-Hoppこれは、複数のプラットフォーム(WindowsとAndroidは現在、もっと後になって欲しい)で動作するアプリです。アプリの主エンジンはC++であるため、各プラットフォームで書き直す必要はありません。エンジンはSQLiteテーブルにデータを格納します。 – baruch

答えて

1

まず、私はあなたがダウンロードする必要があると思いますNDKパッケージ(http://developer.android.com/sdk/ndk/index.html)を入手し、パッケージからドキュメントを調べてください。あなたの質問のほとんどに答えが得られると確信しています。 あなたの質問に素早く答えてください。はい、デフォルトではAndroid NDKにライブラリがあります。たとえば、標準CおよびC++ライブラリ。

+0

私は今標準ライブラリについてです。私は標準ライブラリに含まれていない機能について質問していました。 – baruch

+0

他のライブラリもあります。上記のドキュメントには、その説明があります。 –

+0

どの標準cおよびC++ライブラリが利用できますか? 「Androidプラットフォームは、C++ランタイムサポートライブラリ(libstdC++)を最小限に抑えています。この最小限のサポートには、標準C++ライブラリサポート(ほんのわずかなヘッダーを除く)、C++例外サポート、RTTIサポート " – Ewoks

3
  • SQLiteはJavaで抽象的なdatabase accessを介してAndroidで利用できます。 .so自体はプライベートです。変更が必要な場合は、もちろん独自のSQLiteライブラリをコンパイルできますが、一般的にはJavaからアクセスする必要があります。私は暗号化の目的でこれを行っています。デフォルトのAndroid NDKことで
  • zlibブーストは確かに(私は現在、重く、それを使用しています)のAndroid/NDK上で動作
  • NDKを経由して、もちろんコンパイルすることができNDK
  • crypto++に提供されています
+0

ブースト正規表現を使用して私の' .apk'にどれくらい追加されますか?あなたは別のものをお勧めしますか? – baruch

+0

私はブーストのそれよりはるかに多くを使っているので、私は確かに言うことができません。しかし、正規表現だけではかなり小さいと思います。 – NuSkooler

2

  • libc(Cライブラリ)のヘッダー
  • :そう '安定したネイティブAPI'( http://developer.android.com/sdk/ndk/overview.html)と呼ばれる、いくつかのライブラリを提供します
  • libm(数学ライブラリ)が
  • JNIインタフェースヘッダ
  • libz(ZLIB圧縮)ヘッダ
  • liblog(Androidのロギング)ヘッダ
  • のOpenGL ES 1.1とOpenGL ES 2.0(3Dグラフィックスライブラリ)ヘッダ
  • をヘッダ
  • libjnigraphics(ピクセルバッファアクセス)ヘッダ(Android 2.2以上の場合)。
  • C++のサポートこれは暗号++に関して部分的にしか答えです
0

  • OpenSL ESネイティブの音声ライブラリ AndroidのネイティブアプリケーションAPISのヘッダーの最小セット....

    暗号++を持っていますコマンドラインからのビルド指示があるwikiページAndroid (Command Line)。このプロセスではさまざまなライブラリが作成され、デバイスのライブラリを確認するためにcryptest.exeをビルドする方法が示されます。しかし、Androidのビルドシステムを使用してラッパープロジェクトを作成する必要があります。

    Piotr MorgwaiKotarbińskiには、Androidの修正ビルドシステムでCrypto ++ライブラリを構築するためのページがあります。 Building Crypto++ with NDK toolchainを参照してください。私はPiotrの記事でデバイス上のライブラリを検証するとは思わない。

  • 関連する問題