【问题标题】:Is the NDK an a additional feature on top of the android SDKNDK 是 android SDK 之上的附加功能吗
【发布时间】:2014-03-25 14:14:41
【问题描述】:

我有点困惑。我正在开发一个需要 C++ 音频库的应用程序。为此,我必须使用 android NDK。 NDK 是否支持 SDK 通过使用原生库的附加功能所做的一切?

所以总而言之,我应该使用 NDK 开发应用程序吗?

非常感谢任何澄清

【问题讨论】:

  • 根据文档,如果可能,您应该避免使用 ndk,所以我猜不是。
  • 基于文档?在您发表如此笼统的声明之前,您能说得更具体些吗?
  • 我看到文档说不建议使用 NDK 来提高性能。我真正要问的是 NDK 是否具有 SDK 的所有功能和 API?

标签: android sdk android-ndk


【解决方案1】:

通常,您将使用 NDK 为您提供当前无法使用 (Java) SDK 获得的功能,或者换句话说,您正在添加额外的低级功能。或者您需要从图形中获得更好的性能(例如游戏应用)。

您可以同时使用 NDK 和 SDK 来创建最终应用并访问您需要使用 Java Native Interface, JNI 的 C 代码。

【讨论】:

    【解决方案2】:

    NDK 是 SDK 的附加组件,可让您为 Android 应用程序构建和调试本机 C/C++ 共享库。

    您仍然需要 SDK 将您的应用程序打包成一个完整的 Android 包 (.apk),或将其安装到设备上,或在模拟器中运行。

    如果你不使用 C/C++/Assembly 代码,则不需要 NDK 期间,只需下载 SDK。

    如果您使用 C/C++/Assembly,则需要同时下载 SDK 和 NDK。

    NDK 提供了一组有限的原生 API(例如用于图形和音频)。框架提供的其他基于Java的平台API,可以通过JNI从C/C++调用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多