Android NDK默认有可用的库吗?如果没有,我可以使用任何c ++ / c库,只要我自己包含它吗?
特别是,我需要压缩,加密,正则表达式和sqlite。我在考虑使用zlib
,crypto++
,sqlite
(duh!)和boost
,但如果已经可以使用,则可以使用其他任何内容。
此外,如果内置的内容不存在,您会推荐其他内容吗(我可能会选择公共域名,或BSD或类似内容)
答案 0 :(得分:4)
.so
本身是私有的。如果需要修改,您当然可以编译自己的SQLite库,但通常您应该从Java访问它。我这样做是为了加密目的。zlib
可供NDK使用crypto++
当然可以通过NDK编译答案 1 :(得分:2)
默认情况下,Android NDK会提供一些库,即所谓的“稳定本机API”(http://developer.android.com/sdk/ndk/overview.html):
libc
(C库)标题libm
(数学库)标题libz
(Zlib压缩)标题liblog
(Android日志记录)标题libjnigraphics
(像素缓冲区访问)标头(适用于Android 2.2及更高版本)。答案 2 :(得分:1)
首先,我认为您需要从此处下载NDK软件包:http://developer.android.com/sdk/ndk/index.html并调查软件包中的文档。我相信你会得到大部分问题的答案。 并快速回答您的问题。是的,Android NDK默认有库。例如标准C和C ++库。
答案 3 :(得分:0)
这只是关于Crypto ++的部分答案....
Crypto ++有一个wiki页面,其中包含来自Android (Command Line)命令行的构建说明。该过程将创建各种库,并向您展示如何构建cryptest.exe
以验证设备上的库。但是你仍然需要使用Android的构建系统创建包装器项目。
PiotrMorgwaiKotarbiński有一个关于使用Android修改后的构建系统构建Crypto ++库的页面。见Building Crypto++ with NDK toolchain。我不相信Piotr的文章验证了设备上的库。