android 中 SDK 和 NDK 的区别

Difference between SDK and NDK in android

我作为 Android 应用程序开发人员工作了 2 年。我通常使用 android SDK 进行所有 Android 应用程序开发。现在我有一个项目,它是一个 Android 应用程序,我必须在其中使用 SDK 和 NDK 进行应用程序开发(根据客户要求)。 但由于我对 NDK 没有任何经验,所以我不知道它是什么。在一些博客中我了解到NDK开发是基于c++的。

要使用 NDK 就必须具备完整的 c++ 知识,这是真的吗?

请帮忙!!

使用 NDK 意味着您必须在 C/C++ 中编写部分代码才能达到速度。如果是客户要求,那么您别无选择。但请记住,只有当您觉得需要更好的性能时才应使用 NDK。当然,您必须对 c/c++ 有所了解才能使用 NDK。

  • NDK
  1. NDK是一套将C代码编译成共享库的工具, 您可以在您的应用程序中使用它 - 仅此而已。

  2. 允许在 iOS 和 Android 平台之间重用遗留代码 适合实施 CPU 不需要的密集型操作 分配大量内存,如信号处理、物理模拟。

  • SDK
  1. SDK 是 Android 应用程序的主要开发工具包 - 它包含 Java 的工具和资源(png,xml)编译,打包到 apk 文件、安装、运行 并在设备、模拟器、文档等上调试它们

  2. Java 具有出色的内存管理模型 出色的线程模型 更好的异常处理模型 丰富的库 对 unicode 字符的出色支持。