sdk(软件开发工具包)

软件开发工具包一般都是一些软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合。

软件开发工具包括广义上指辅助开发某一类软件的相关文档、范例和工具的集合。

软件开发工具包是一些被软件工程师用于为特定的软件包、软件框架、硬件平台、操作系统等创建应用软件的开发工具的集合,一般而言SDK即开发 Windows 平台下的应用程序所使用的SDK。它可以简单的为某个程序设计语言提供应用程序接口API的一些文件,但也可能包括能与某种嵌入式系统通讯的复杂的硬件。一般的工具包括用于调试和其他用途的实用工具。SDK还经常包括示例代码、支持性的技术注解或者其他的为基本参考资料澄清疑点的支持文档。

为了鼓励开发者使用其系统或者语言,许多SDK是免费提供的。软件工程师通常从目标系统开发者那里获得软件开发包,也可以直接从互联网下载,有时也被作为营销手段。例如,营销公司会免费提供构建SDK 以鼓励人们使用它,从而会吸引更多人由于能免费为其编程而购买其构件。

SDK可能附带了使其不能在不兼容的许可证下开发软件的许可证。例如产品供应商提供一个专有的SDK可能与自由软件开发抵触。GPL能使 SDK与专有软件开发近乎不兼容。LGPL下的SDK则没有这个问题。

中文名

软件开发工具包

外文名

Software Development Kit

SpeechSDK的Windows语音助手设计

介绍了该系统的设计目标及功能结构,结合实际项目背景,提出了解决方案并以分模块的形式探讨了系统的功能,介绍了系统各部分的特点。经过测试基于SpeechSDK。 [1]

相关背景

API

API(Application Programming Interface,应用编程接口)其实就是操作系统留给应用程序的一个调用接口,应用程序通过调用操作系统的 API而使操作系统去执行应用程序的命令(动作)。其实早在DOS时代就有 API 的概念,只不过那个时候的 API 是以中断调用的形式(INT 21h)提供的,在 DOS下跑的应用程序都直接或间接的通过中断调用来使用操作系统功能,比如将 AH置为30h后调用INT 21h就可以得到DOS 操作系统的版本号。而在 Windows 中,系统 API 是以函数调用的方式提供的。同样是取得操作系统的版本号,在 Windows 中你所要做的就是调用 GetVersionEx() 函数。

可以这么说,DOSAPI 是 “Thinking in汇编语言” 的,而 Windows API 则是 “Thinking in 高级语言” 的。

DOSAPI是系统程序的一部分,他们与系统一同被载入内存并且可以通过中断矢量表找到他们的入口,那么 什么是Windows API呢?要说明白这个问题就不得不引入下面要介绍得这个概念——DLL。 [1]

DLL

DLL,即Dynamic Link Library(动态链接库)。在Windows 环境下含有大量 .dll格式的文件,这些文件就是动态链接库文件,其实也是一种可执行文件格式。跟.exe文件不同的是,.dll文件不能直接执行,通常由.exe在执行时装入,内含有一些资源以及可执行代码等。其实Windows的三大模块就是以DLL的形式提供的(Kernel32.dll,User32.dll,GDI32.dll),里面就含有了API函数的执行代码。为了使用DLL中的API函数,必须要有API函数的声明(.h)和其导入库(.lib),导入库可以先这样理解,导入库是为了在DLL中找到API的入口点而使用的。

为了使用API函数,我们就要有跟API所对应的.h和.lib文件,而SDK正是提供了一整套开发Windows应用程序所需的相关文件、范例和工具的“工具包”。

SDK包含了使用API的必需资料,所以也常把仅使用API来编写Windows应用程序的开发方式叫做“SDK编程”。而API和SDK是开发Windows应用程序所必需的东西,所以其它编程框架和类库都是建立在它们之上的,比如VCL和MFC,虽然比起“SDK 编程”来有着更高的抽象度,但这丝毫不妨碍在需要的时候随时直接调用API函数 。 [1]

游戏推荐平台SDK的设计与实现

相信随着Android对应程序的继续火爆发展,这款既节约了Android开发人员开发软件的时间的,又确保和提高开发人员和广告商的经济利益,并且又具有良好地可移值性的,能够适用于任何Android平台上的移动,应用的广告平台和游戏推广中心SDK的推广和发展将是十分顺利的。 [2]

广告模块业务描述

根据网上提供的资料,到2012年2月15日为止,我国用手机上网的人数已由03年的900万到4. 5亿人,且增长速度极快。

移动无线广告领域大有可为,而友盟广告平台正是顺应着这一形势而成的一个为移动应用开发者提供广告推广平台,并获得广告分成收入,为广告提供商提供广告展示平台,推广自己的产品的一个综合平台。他通过为移动应用开发者提供可以在自己的应用中加入广告的SDK及详细说明文档来保障移动应用开发者正确,顺利的使用广告平台,并通过SDK中的数据上传接口来记录移动终端用户看到,及点击广告的动作,从而为移动应用开发者获‘得广告提成提供数据基础。因此,SDK的开发是广告平台能否顺利应用并发展的重中之重,他的易用性,正确性,稳定性直接决定了移动应用开发者是否选择友盟广告平台,是使得友盟广告平台能否在竞争激烈的移动无线广告市场中脱颖而出的核心竞争力。 [2]

游戏模块业务描述

众所周知,移动互联网的发展速度十分迅猛,在世界各地,不管是移动运营商,还是设备制造商,甚至是软件生产商都投入了大量的人力物力布局移动互联网,移动互联网大有超越基于个人电脑的传统互联网成为最前沿的改变人们生活方式的下一代革命性技术。

由于Android市场的审核机制不是十分的严格,大量的粗制滥造的游戏充斥于游戏市场中,使用户叫苦不迭,这一现象甚至已经影响了整个Android平台的发展。因此,用户和Android市场都需要一个平台来评价,推荐一些好的游戏,来净化一下这个市场。而项目中的SDK就是顺应这一形势产生的一个定期向用户提供推荐游戏的一个平台,其业务模式与广告平台类似,都是开发一个SDK来允许移动应用开发者将此游戏平台集成到其所开发的应用中,然后将他的应用发布到Android市场中,当用户下载此应用并使用的过程中,会看到此游戏平台的提示,点击进去就可看到游戏中心所提供的数据,了解到近期Android市场中一些评价很高的游戏,在这个过程中,SDK中会有专门模块记录用户的行为,为以后移动应用开发者获得游戏推荐提成提供数据基础。 [2]

与MOD的关系

游戏中就有很多SDK工具包,可以开发MOD和资料片。

2017年,Vungle推出SDKV5,增加10个新的交互式应用内视频模板进一步增强消费者的广告体验 -新的模版将会植入Vungle最新的广告埋点技术。

什么事SDK(软件开发工具包)?相关推荐

  1. sdk - 软件开发工具包

    英文: Software Development Kit 中文: 软件开发工具包 介绍: 软件开发工具包括广义上指辅助开发某一类软件的相关文档.范例和工具的集合. 软件开发工具包是一些被软件工程师用于 ...

  2. SDK软件开发工具包

    SDK Soft Development Kit 软件开发工具包

  3. ESP8266 Non-OS SDK 开发之旅 基础篇① 初识 Non-OS SDK,史上超级详细手把手教小白20分钟快速搭建SDK软件开发环境,完成第一个例子Hello World!

    文章目录 1.前言 2. SDK概述 2.1 SDK使用流程 2.2 ESP8266 HDK -- 硬件开发工具 2.3 ESP8266 SDK -- 软件开发工具包 2.3.1 Non-OS SDK ...

  4. 华睿相机sdk 开发_索尼发布相机远程操作SDK(软件开发工具包)

    索尼从2020年12月9日开始,向开发者免费提供针对索尼数码相机的软件开发工具包" Camera Remote SDK" 1.03版. " Camera Remote S ...

  5. Revit SDK EXTENSIONS(软件开发工具包扩展)是什么

    Revit SDK EXTENSIONS(软件开发工具包扩展)是什么 Extension SDK 是开发环境,以快速开发为目的,帮助开发者以Revit扩展技术为基础创建活动插件. Extension ...

  6. 【整理】什么是SDK(软件开发工具包)

    一般软件开发工具包广义上指辅助开发某一类软件的相关文档.范例和工具的集合.软件开发工具包是一些被软件工程师用于为特定的软件包.软件框架.硬件平台.操作系统等创建应用软件的开发工具的集合,一般而言SDK ...

  7. 什么是软件开发工具包(SDK)

    开发一个软件,需要经过编辑.编译.调试.运行几个过程. 编辑:使用编程语言编写程序代码的过程. 编译:如上一节所讲,就是将编写的程序进行翻译. 调试:程序不可能一次性编写成功,编写过程中难免会出现语法 ...

  8. sdk (软件开发工具包)

    软件开发工具包(外语首字母缩写:SDK.外语全称:Software Development Kit)一般都是一些软件工程师为特定的软件包.软件框架.硬件平台.操作系统等建立应用软件时的开发工具的集合. ...

  9. SDK(Software Development Kit, 即软件开发工具包 )

    SDK(Software Development Kit, 即软件开发工具包 )一般是一些被软件工程师用于为特定的软件包.软件框架.硬件平台.操作系统等建立应用软件的开发工具的集合 SDK是一些被软件 ...

最新文章

  1. ICLR认知科学@AI workshop一览
  2. jquery 数组的调用
  3. Android 5.1 SystemServer SystemService 各个系统Manager
  4. class反编译_IDEA反编译功能小试牛刀
  5. TCP短连接产生大量TIME_WAIT导致无法对外建立新TCP连接的原因及解决方法—基础知识篇...
  6. AWS共享资源的警告
  7. Bootstrap研究1-精巧的网格布局系统
  8. perf 函数调用性能(函数流程图)
  9. FP Growth算法
  10. 使用phonegap,进行页面跳转
  11. rails获取json内容
  12. 系统故障模拟及修复实验
  13. StringTokenizer类
  14. 谷歌浏览器应用翻译插件,
  15. 安卓应用加固壳判断java厂商_使用frida来hook加固的Android应用的java层
  16. 正睿OI补题(贪心)
  17. Windows下查看Android手机APP日志
  18. 为什么打开计算机不显示桌面快捷方式,电脑桌面快捷方式不见了的解决办法
  19. R语言 sub()用法
  20. java共享锁和排他锁的区别_排他锁和共享锁分别是什么?有什么不同?

热门文章

  1. php 四舍五入,php四舍五入函数round和ceil用法区别介绍
  2. SpringMVC jsp
  3. 如何linux桌面进入系统文件夹,Linux桌面用户文件夹开启密码保护教程
  4. 简约自适应WordPress博客二次元主题Qzdy4.3
  5. 谷歌地图的纵横功能将于8月9日停用
  6. 进阶课程㊳丨Apollo平台的快速入门
  7. 机器学习之决策树模型最优属性选择方法
  8. Prometheus报错Error refreshing service Unexpected response code: 503解决办法
  9. linux memcached 缓存失效,高并发访问下避免对象缓存失效引发Dogpile效应
  10. 错误:ssh:could not resolve ....