SDK(英文:軟件 Development Kit,中文:軟件開發工具包),是通常由硬件平臺、操作系統(OS)或編程語言的制造商提供的一套工具。用VC編寫Windows程序有兩種方式:Windows C方式(SDK)和C++方式(對SDK函數進行包裝,如VC中的MFC、BCB中的VCL)。SDK編程是直接調用Windows API進行編程。API由上千個API函數組成(Win95中有兩千多個),而MFC是API的封裝,結合面向對象的繼承、多態組成一個個類,共有一百多個類組成。
SDK通常用于移動應用程序開發、Web開發、云計算、物聯網、游戲開發等。SDK具有開發高效、加快部署、模塊/組件/程序包/工具的集成、節約成本等特點。
知名SDK有:Java開發套件(JDK)、Windows 7 SDK、MacOs X SDK 和 iPhone SDK、騰訊地圖SDK、百度地圖SDK、微信支付SDK、支付寶SDK、微博開放平臺、百度AI開放平臺等。
簡介
SDK(Software Development Kit的縮寫,中文稱為軟件開發工具包,是通常由硬件平臺、操作系統(OS)或編程語言的制造商提供的一套工具。一個基本的SDK通常由編譯器、調試器和應用編程接口(API)組成,也可包含文檔、庫、編輯器、運行時/集成開發環境、測試/分析工具、驅動程序及網絡協議等。
用途
參考資料:
使用
使用SDK通常遵循以下步驟:在VC6的IDE中啟動后,選擇File菜單的New...選項,在Projects標簽內選擇Win32 Application,指定項目名稱和路徑后按OK按鈕。根據需要選擇項目類型,例如An empty project、A simple Win32 application或A typical 'Hello World!' application,最后按Finish完成。
參考資料:
優勢
開發高效
SDK通過提供可整合到應用程序中的預構建組件和庫來提高開發效率。這些組件為開發人員節省以前從頭開始編碼和調試所花費的大量時間。?
加快部署
SDK通過提供可讓開發人員快速構建和集成應用程序的工具來加快部署。它們通常支持多個平臺,可讓開發人員在多個設備或操作系統上快速部署。
集成
SDK提供預構建的模塊、組件、程序包和工具,供開發人員構建、測試和部署軟件應用程序。它們簡化開發和測試,以及與其他系統和服務、代碼示例和教程、調試工具和代碼庫的集成。?
節省成本
SDK減少開發應用程序所需的時間和資源。通過提供預構建的組件和工具庫,SDK 可讓開發人員快速構建特性和功能。SDK 減少創建新應用程序所需的時間和成本。它們還降低與部署和維護應用程序相關的成本,同時提供簡化的安裝過程和更新。
參考資料:
常見SDK類型及典型供應商
知名SDK
軟件開發套件的示例包括Java開發套件(JDK)、Windows 7 SDK、MacOs X SDK 和 IPhone SDK。
國內常見SDK及典型供應商
參考資料:
監管
2020年7月,中央網信辦、工業和信息化部、公安部、國家國家市場監督管理總局四部門啟動2020年App違法違規收集使用個人信息治理工作,年度治理重點專門提到了對第三方SDK的治理。2021年3月12日,國家互聯網信息辦公室、工業和信息化部、公安部、國家市場監督管理總局聯合制定《常見類型移動互聯網應用程序必要個人信息范圍規定》,按照基本功能服務分類明確了移動互聯網應用程序所需的必要信息。規定對App集成的SDK收集個人信息同樣具有約束作用。
2021年4月,在國家互聯網信息辦公室的統籌指導下,工業和信息化部會同公安部、市場監管總局起草的《移動互聯網應用程序個人信息保護管理暫行規定》公開征求意見。其中,對APP第三方服務提供者應當履行的個人信息保護義務提出了要求。
2021年11月1日,工業和信息化部發布《工業和信息化部關于開展信息通信服務感知提升行動的通知》,通知規定:已收集個人信息清單應簡潔、清晰列出APP(包括內嵌第三方軟件工具開發包SDK)已經收集到的用戶個人信息基本情況,包括信息種類、使用目的、使用場景等。鼓勵應用商店為本平臺APP提供檢測服務,及時向APP開發者反饋相關問題并督促改正,防止違規APP上架。內嵌SDK在非服務所必須或無合理應用場景下,不得自啟動或關聯啟動;APP開發者、內嵌SDK應提供相應功能,由用戶自主選擇是否開啟關聯啟動。
SDK標準
2020年11月全國信息安全標準化委員會發布了《網絡安全標準實踐指南—移動互聯網應用程序(App)使用軟件開發工具包(SDK)安全指引》,同期每日互動起草國家標準《信息安全技術移動互聯網應用程序(App)軟件開發工具包(SDK)安全要求》。騰訊控股牽頭起草行業標準《移動應用軟件開發工具包(SDK)安全使用要求》。
相關事件
調查研究
2021年12月21日,中國信息通信研究院(以下簡稱“中國信通院”)主辦的“2022ICT深度觀察——數據安全產業分論壇”順利召開。會上,中國信通院安全所數據部陳主任發布了與騰訊聯合編制的《軟件開發包(SDK)安全研究報告(2021)》,從場景分析、數據統計、政策標準方面分享了SDK行業發展現狀,對SDK行業面臨的合規風險、安全風險進行了分析,面向SDK及App開發者提出了安全措施建議,并從實踐角度分享案例和經驗,為促進SDK行業生態的健康發展提供參考。
隱私風險
2019年11月,上海市消費者權益保護委員會委托第三方公司對一些手機軟件中的SDK插件進行了專門的測試,卻發現一些SDK暗藏玄機。它們會讀取設備的IMEI、國際移動用戶識別碼、運營商信息、電話號碼、短信記錄、通訊錄、應用安裝列表和傳感器信息。這些APP里的SDK來讀取用戶的隱私信息只是第一步,讀取完成后,還會悄悄地將數據傳送到指定的服務器存儲起來。北京招彩旺旺信息技術有限公司的SDK,甚至涉嫌通過菜譜、家長幫、動態壁紙等多款軟件,竊取用戶更加隱私的信息。因為SDK能夠收集用戶的短信,以及應用安裝信息,一旦用戶在網絡交易的驗證碼被獲取,極有可能造成嚴重的經濟損失。
2023年10月27日,央視網發文稱:近年來,國家安全機關工作發現,境外一些別有用心的組織和人員,正在通過SDK搜集用戶數據和個人信息,給國家安全造成了一定風險隱患。
參考資料 >
警惕!有境外組織正通過這個渠道搜集我用戶數據和個人信息.央廣網新聞.2023-10-27
什么是 SDK?.Amazon Web Services.2023-10-27
一文看懂 SDK 是什么意思?SDK 和 API 的區別是什么?.RED HAT.2023-10-27
軟件開發包(SDK)安全研究報告(2021 年).中國信息通信研究院安全研究所.2023-10-27
工業和信息化部關于開展信息通信服務感知提升行動的通知.中國政府網.2023-10-27
中國信息通信研究院聯合騰訊發布《軟件開發包(SDK)安全研究報告(2021)》.tom.2023-10-27
315晚會|酷音鈴聲、手機鈴聲等知名app被曝收集用戶隱私_新浪財經.新浪網.2021-11-17