什么是SDK?
SDK(https://www.ipdatacloud.com/?utm-source=LJ&utm-keyword=?1088),英文名称为Software Development Kit,即软件开发工具包。广泛来说,它是辅助开发某一类软件的相关文档、范例和工具的集合。而对手机来说,通常情况下,SDK是在APP中提供某种功能或服务的插件。它就像是一种通用的功能或者服务模块,可以作为插件方便地嵌入到不同的APP 中使用。
随着手机移动市场份额的快速增长,应用程序开发人员的数量也增长迅速。为了缩短开发时间和提高开发效率,手机应用开发商将多种类型的第三方SDK(软件开发工具包)集成到他们的应用程序中。这些SDK 是由广告、数据、社交网络、地图和推送平台等第三方服务提供商所开发的工具包,可以提供专业的服务,其中封装了复杂的逻辑实现以及请求响应的过程,使其更便于开发人员使用。不难看出,第三方SDK已经成为手机应用生态系统的重要组成部分。
SDK的运行机制
以安卓系统为例
(1) 第三方 SDK 向远程服务器发送请求,图1展示了这种类型SDK的运行机制,例如,提供广告服务、推送消息服务的第三方 SDK 采用这种机制。
由于HTTP没有加密传输数据,因此不能保证数据隐私以及完整性。HTTPS(超文本传输安全协议)是一种用于在不可信网络上实现安全连接的网络通信协议,它将 SSL/TLS 的安全功能添加到标准 HTTP(超文本传输协议)通信中,因此只要正确实现并配置,就可以防止窃听和中间人攻击。使用 HTTPs 替代 HTTP 已成为一种趋势,然而仍有许多第三方 SDK 使用 HTTP 协议,通过网络连接到云服务器,这意味着很高的安全风险。
(2) 第三方SDK启动本地服务
有些第三方 SDK在主机应用程序中设置本地服务器,以确保这些 SDK的制造商可以可控地监视移动设备。 本地服务器能够收集当前设备中的位置、IMEI、安装信息等信息,而远程服务器可以发送请求并从本地服务器 检索这些信息。甚至是远程安装与卸载也可以通过与本地服务通信来实现。图2描述了这种类型的 SDK 的工作机制。虽然我们可以采取一些措施来使本地服务器由正确的远程服务器控制,但是我们的通信信道可能被攻击者劫持,这使得攻击者能够与本地服务器交互。
在手机应用中,集成第三方SDK的优势是显而易见的:首先,应用程序可以获得专业公司在各个领域提供的高质量资源,例如地图(如 GoogleMap)、交通数据、天气数据等;其次,如果应用程序将类似PayPal的第三方SDK包含在内,它就可以执行像付款这样复杂的功能。这些 SDK有助于提高应用的开发效率,并且实现更加健壮,尤其是对于小型的开发团队。另外,广告平台(例如 AdMob)这种第三方SDK可以帮助应用程序的开发者获得收益。
到此这篇sdk测试和app测试区别(sdk的测试方法)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/te-aq/65727.html