安卓:SDK和库项目有什么区别?

5

对于像Facebook这样的应用程序,它们提供SDK。我已经使用了许多第三方库来满足不同的需求。那么这两种情况之间有什么区别呢?也就是代码作为库或作为SDK捆绑的区别。

5个回答

8
一个是一段代码,你可以从自己的代码中调用它,帮助你更快、更轻松地完成一些事情。例如,位图处理库将提供载入和操作位图图像的功能,避免你自己编写所有这些代码。 SDK(软件开发工具包)是一个库(经常带有额外的工具应用程序、数据文件和示例代码),它可以帮助你开发使用特定系统的代码(例如扩展程序代码用于使用操作系统的功能(Windows SDK)、通过特定系统绘制3D图形(DirectX SDK)、编写添加项以扩展其他应用程序(Office SDK),或编写代码使类似Arduino或手机等设备做你想要的事情)。
来自该线程

它们听起来确实一样。您能再解释一下吗? - Rohit Singh
一个库通常是一小组独立的功能,例如数学库。 SDK并不总是包含其接口的代码,最近这似乎是最常见的用法:例如,Facebook SDK是一组代码库,可促进与Facebook的交互。在这种情况下,大部分Facebook的代码都存储在服务器上,而SDK只是一组用于与服务器通信的工具。 SDK也可以用于与操作系统(Android SDK)或游戏引擎(虚幻引擎SDK)进行交互。 - Alejandro Cumpa

6
Android SDK -> 是核心功能和软件工具,允许您为Android平台创建应用程序。SDK包含许多库和工具,您将使用这些库和工具来开发您的应用程序。 -> 是一组预先构建的编译代码,您可以使用它来扩展应用程序的功能。例如,您可能需要在应用程序中显示一些图形。您可以选择使用其他人开发的预构建库,这将为您提供所需的功能,从而节省时间。
感谢Nithish提供此解释。

1
SDK是软件开发工具包,提供了一种开发软件的平台/方式,而库项目是一个项目,其中有一些代码行来解决任何需要的问题,可能有设计或代码文件。通常,库项目只关注一个问题,但SDK是完整的工具包/工具,可用于开发任何任务。如果您的代码中想要某些在SDK中不存在的功能,则可以使用任何库项目。

0
实际示例:
Android库: RetroFit,Kotlin协程,Dagger Android SDK: Firebase,Crashlytics,Google Pay
Lib是导入的、行业标准化的代码,而SDK不仅仅是代码,因为它们可能有一个用于管理数据的用户界面,就像一个带有后端的网站。

More: https://www.aalpha.net/blog/best-android-frameworks-libraries/


0

SDK是为了让你可以构建Facebook应用程序。SDK通常只能在更具体的上下文中使用。库是为了让你可以将库用于自己的应用程序。库旨在具有可移植性。

显然,你可以从任何地方使用代码到任何地方,但我认为这是主要区别。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接