目录

第五章:三方SDK解决方案

HarmonyOS生态伙伴SDK发展策略

HarmonyOS生态伙伴SDK(Software development kit 软件开发套件)是生态伙伴基于HarmonyOS能力和HarmonyOS SDK一起面向HarmonyOS应用提供的丰富多样的技术和商业能力包,HarmonyOS生态伙伴SDK更是HarmonyOS生态的重要组成之一,可帮助开发者重用技术资产,快速开发HarmonyOS生态应用、元服务,提升开发效率。

为携手生态伙伴实现更快更好的发展,提升生态使能力量,汇聚千行百业经验,以规范、安全、高效目标帮助伙伴SDK持续繁荣,HarmonyOS生态伙伴SDK发展策略如下:

HarmonyOS生态伙伴闭源SDK分类

根据业界SDK的发展现状,结合HarmonyOS生态伙伴SDK实际情况,将SDK分为21大类,以及64个子类。同时,鸿蒙系统提供的一些特性能力,可以很好的帮助SDK开发者提升开发效率和提升用户体验。其中部分SDK增强能力及新增子类介绍如下。

[h2]第三方登录类

第三方登录类SDK,提供运营商一键登录、三方账号登录能力,可以免输入账号密码,快速完成账号注册/登录,助力开发者有效提升拉新转化率及用户体验。该类SDK可以分为以下几个子类。

[h2]认证类

认证类SDK,提供生物特征识别、身份认证等功能。该类SDK可以分为以下几个子类。

认证类SDK中,活体检测功能,一般可以使用鸿蒙安全摄像头方案,利用数据签名验证方式来避免攻击者使用AI换脸能力来绕过真人检测。

[h2]支付类

支付类SDK为开发者提供多种支付方式,快速与各类支付系统对接,实现在线支付、退款、查询等一系列支付功能,为用户提供安全、便捷的支付体验。该类SDK可以分为以下几个子类。

[h2]社交类

社交类SDK帮助开发者快速集成消息、分享等能力,广泛应用于社交、电商、交通出行、互动游戏、直播等多种场景。该类SDK可以分为以下几个子类。

[h2]媒体类

媒体类SDK,提供数字版权、音频、相机、图像处理、媒体文件管理、扫码、编解码、多媒体播放等服务,帮助开发者快速构建音视频拍摄、编辑、播放和分享等多媒体处理能力。该类SDK可以分为以下几个子类。

媒体类SDK中,音视频通话SDK通常可以使用集成VOIP能力,在用户接收到音视频通话信息,在应用处于离线模式时,仍然可以及时通知用户,并且用户可以快速的接通会话;同时,如果集成了画中画能力,在视频通话过程中,用户可以将应用切换后台,保持视频界面在所有应用上层,在不打断通话过程时,可以处理其他的业务;如果将画中画能力应用在播放器中,同样可以实现在观看视频时,处理其他的业务。这些鸿蒙创新特性如果集成在SDK当中,当应用集成SDK之后,只需申请相关权限即可,可以极大的提升应用开发者效率和用户体验。另外,鸿蒙提供有硬编解码能力,避免了数据拷贝操作,在音视频低时延处理方面提供了极为有效的解决方案。

[h2]人工智能类

基于人工智能技术,提供音频、视频、图片、文本的计算服务, 涵盖语音识别与合成、图像识别等多个AI能力,使能开发者轻松打造创新的智能应用,为用户带来更智慧、个性化的体验。该类SDK可以分为以下几个子类。

[h2]平台服务类

平台服务类SDK,输出平台的能力,功能主要依托平台能力实现。该类SDK可以分为以下几个子类。

在平台服务类的SDK中,涉及音视频处理相关的SDK,均可以参考媒体类的SDK,集成鸿蒙相关特性,比如画中画、低时延等特性,来提升用户体验。

[h2]地图类

地图类SDK,提供地图显示、交互、绘制、检索、导航、LBS等多种地图开放能力,开发者可快速实现智能、精准、高效的定位、导航,精准获取用户位置信息,实现个性化地图呈现与交互。该类SDK可以分为以下几个子类。

地图类SDK中,导航功能,如果涉及AR导航,可以利用鸿蒙AREngine Kit,对开发效率和性能都有极大的提升。

[h2]设备通信类

设备通信类SDK,提供跨设备间的消息传输,如U盾、穿戴设备、车载终端等与APP间的通信。该类SDK可以分为以下几个子类。

[h2]网络类

网络类SDK,提供域名解析、CDN加速、网络中台、企业VPN接入等网络服务,帮助开发者显著提升网络通讯效率。该类SDK可以分为以下几个子类。

[h2]安全风控类

安全风控类SDK,提供应用安全、设备安全、安全控件等功能,通过多种专业安全技术和高标准安全解决方案,助力开发者全方位保障应用合规和安全运营。该类SDK可以分为以下几个子类。

在安全风控类SDK中,数据安全SDK,可利用数据增强服务来丰富SDK能力;设备安全SDK,可以充分利用系统的安全能力,比如设备完整性检测,在减少开发工作量的同时,也增强了安全检测防护能力。

[h2]存储类

存储类SDK,帮助开发者快速、高效地与存储服务集成,为不同场景提供多种类型的存储服务,实现海量数据的存储和管理。该类SDK可以分为以下几个子类。

[h2]统计类

统计类SDK,通过埋点等方式,以数据化图表等多种形式,为开发者提供数据采集及数据分析能力,助力开发者优化用户体验,支撑精细化用户运营,实现经营增长。该类SDK可以分为以下几个子类。

[h2]框架类

框架类SDK,提供开发某一类App或跨平台App所需的整体框架。该类SDK可以分为以下几个子类。

[h2]系统工具类

系统工具类SDK,提供系统级基础功能,如文本输入法,解决生僻字问题等。

[h2]XR 类

XR类,提供虚拟现实(VR)、增强现实(AR)和混合现实(MR)等技术能力,如运动跟踪、人体和人脸跟踪、环境跟踪、3D建模、全景制作、AR营销等,帮助开发者高效构建具有沉浸式体验的应用。鸿蒙系统的AREngine Kit,为XR类相关SDK提供了基础能力。

[h2]性能监控类

性能监控类SDK,支持应用异常崩溃(如App崩溃、App无响应、OOM等)和监控指标(如CPU、内存、磁盘使用情况、启动时延、网络流量等)的数据收集和分析。该类SDK可以分为以下几个子类。

[h2]推送类

推送类SDK,为开发者提供消息推送服务,支持多厂商、多系统的消息下发通道,以及丰富的消息推送方式,有效提升消息触达率和推送效率。

[h2]客服类

客服类SDK,提供客服对话窗口、客服机器人等客服功能,实现用户与客服便捷沟通、问题跟踪、以及客服动态分配等功能。

[h2]游戏类

游戏类SDK,提供网络加速、游戏更新、语音服务、云游戏、游戏分发、小游戏相关功能、游戏信息获取等相关功能,帮助开发者完善游戏体验。

[h2]广告类

广告类SDK,帮助开发者在应用中集成广告功能,助力实现商业化变现,提供广告展示、管理、监测与归因等服务。该类SDK可以分为以下几个子类。

HarmonyOS生态伙伴闭源SDK规范要求

[h2]SDK基本信息规范

提供SDK的服务商在上传SDK时需提供完善的且满足下列要求的SDK信息,包括但不限于SDK基本信息(如名称、图标、分类、所属行业、版本号、功能描述、开发者信息)、SDK包体信息(如名称、包体大小、SDK接口文档)、隐私信息(如隐私政策、权限说明)、合规使用指南、定价信息、用户协议等。同时应确保所提交的SDK信息符合实际功能、用途,能够准确反映SDK的核心体验。

[h2]SDK安全规范

SDK必须严格确保其安全性,禁止存在任何可能对应用程序(App)及其终端用户的数据及隐私安全构成威胁的安全漏洞。SDK应采用安全设计原则,遵循基本安全、数据存储安全、数据交互安全、重要组件安全、代码及资源文件安全等要求,避免常见安全漏洞。

类型

名称

基本安全要求

应确保分发过程具备有效的完整性校验机制,避免提供的代码、资源文件遭篡改。

应确保分发包、Demo包内不包含病毒、木马等恶意程序。

应避免调试信息函数输出通信日志、关键变量等敏感信息。

应避免分发包、Demo包内残留内网URL、测试账号、测试数据等测试信息。

应避免嵌入与业务功能无关的插件、代码,或在分发包中私自打包提供其他SDK产品。

申请系统权限应遵循最小必要原则,避免索要非实现业务功能所必须的权限。

数据存储安全要求

应对存储于最终用户设备上的含有个人信息、重要数据的文件进行加密(如库表加密、 文件加密等), 避免被宿主App、其他App、恶意程序等非法访问、篡改。

宜对与宿主App或其他本地程序共同处理、使用的数据进行加密处理,并约定安全有效的解密方案,确保数据的合法授权访问。

应对存储于最终用户设备上的数字证书文件进行加密,避免数字证书泄露或遭非法篡改。

应对存储于最终用户设备上的备份数据进行加密,避免备份数据泄露。

应限制本地存储的配置信息、用户偏好等轻量数据读写权限,避免遭其他程序越权访问、篡改。

宜限制个人信息、重要数据本地存储时间,确保到期数据自动删除。

应避免本地存储去标识化数据与原始标识的对应关系信息,防止相关信息泄露导致去标识化失效。

应避免本地存储明文的鉴权信息(如账号、密码等),宜采用加随机盐的哈希值方式存储相关数据,避免用户个人敏感信息泄露。

数据交互安全要求

应采用安全的传输协议确保SDK与服务端数据交互的机密性、完整性、可用性。

涉及个人信息、重要数据传输的场景,应采用HTTPS等加密传输协议或对相关数据单独加密,确保个人信息加密传输。

使用HTTPS传输协议时,宜开启SDK与服务端的双向验证机制,确保服务端身份真实性。

使用HTTPS自定义证书时,应对服务端主机名进行校验,验证服务端主机身份。

应使用安全的加密算法、密钥生成机制,避免使用不安全的加密算法,避免加密算法破解。

重要组件安全要求

应在使用组件调用系统功能时确保其配置安全性,避免出现配置不合理导致的安全风险。

应在使用组件调用系统功能时遵循最小必要原则,避免调用与实现业务功能无关的功能。

应确保其配置安全性,避免出现配置不合理导致的安全风险。

实现与服务端交互时,应符合数据交互安全的各项要求。

宜在调用外部组件时验证接收方合法性并对参数进行过滤,避免出现越权调用、隐式调用等风险。

宜在调用外部组件时增加异常捕获机制,避免出现程序崩溃等风险。

代码及资源文件安全要求

宜采用代码混淆、加固等手段提高逆向分析的难度,降低关键函数、逻辑等泄露风险。

宜对本地存储的so文件进行加固/混淆处理,避免敏感信息泄露。

宜对本地存储的h5资源文件进行加密处理,避免资源文件遭篡改。

如采用资源文件热更新技术,宜对文件解压文件名进行限制,避免更新的资源文件被非法获取。

宜对本地存储的so文件进行地址空间随机化,降低缓冲区溢出攻击风险。

宜对本地存储的so文件进行编译器堆栈保护,避免栈溢出时系统不对程序进行保护。

宜对本地存储的密钥、证书进行加密,避免本地密钥、证书泄露或遭篡改。

宜避免代码内存在硬编码或强耦合的URL地址,避免链接遭篡改。

SDK不得出现任何形式的恶意行为,任何破坏应用程序(App)安全性和侵害用户权益的行为都是不被允许的,包括但不限于流量劫持、不当获利、勒索、资费消耗、隐私窃取、静默下载安装、病毒木马、恶意弹窗、隐藏误导、恶意霸屏、保活拉活、伪造篡改、远程控制、干扰正常功能等行为。

行为名称

说明

流量劫持

SDK信息拉取、上报和展示目标与App提供者设定的目标不同,恶意劫持App流量,可能对App造成损害。

不当获利

SDK在用户不知情的情况下利用系统和资源进行获利,包括但不限于加密货币挖矿、通过模拟人工点击广告或链接、下载软件、修改软件业务逻辑进行刷量刷榜等。

勒索

SDK通过加密用户数据,窗口遮蔽,滥用锁屏、锁应用等权限,或者利用拒绝服务漏洞,影响用户对手机的正常使用,并以恢复正常使用为由向用户勒索。

资费消耗

SDK通过消耗用户网络套餐资费、恶意发送收费短信、订阅收费服务、使用移动终端支付等行为,造成用户的资金损失。

隐私窃取

SDK在用户不知情或误导用户的情况下,隐蔽窃取用户的通讯录、短信息等个人信息或敏感信息,隐蔽进行拍照、录音等敏感行为,并发送给恶意开发者,造成用户敏感信息泄露。

静默下载安装

SDK在后台静默下载、安装其它恶意软件或病毒木马,包括但不限于滥用热更新或插件化技术动态加载恶意代码。

病毒木马

SDK含有病毒、木马,包括但不限于通过可疑代码、文件及程序等形式对App、操作系统造成负面影响或侵害用户权益。

损害安全

SDK诱导、欺骗用户,在用户主观不了解操作后果情况下,执行有损系统和应用安全的操作,包括但不限于下载或安装系统root工具、激活设备管理器选项、开启辅助功能等。

恶意弹窗

SDK借助系统机制,在桌面或其他应用界面上恶意弹窗。

隐藏误导

SDK含有隐藏或不被用户感知或发现的功能,如创建透明的桌面小组件或文件夹、在无合理使用场景的情况下隐藏或修改最近任务列表。

恶意霸屏

SDK借助系统机制或漏洞,导致用户无法关闭应用或者操作系统功能,达到霸屏的目的,包括但不限于以下行为:

(1)禁止导致系统功能键失灵的行为,如:用户点击功能键,无反应。

(2)禁止全屏隐藏导航栏/状态栏。

(3)禁止隐藏系统功能键或屏蔽全面屏手势,包括主屏键、返回键、任务键等。

(4)禁止延迟关闭或退出应用界面的行为,或需要倒计时结束才能关闭或退出应用界面的行为。

保活拉活

SDK恶意借助系统的机制或滥用系统功能,达到应用被唤醒或后台长期驻留的目的。

伪造篡改

SDK通过伪造、篡改、劫持短信、彩信、邮件、通讯录、通话记录、收藏夹、桌面等方式,诱骗用户,而达到不正当目的的恶意行为。

远程控制

SDK在手机端接收远程控制端发来的控制指令,在用户未授权、未知情的情况下,侵害用户隐私、窃取用户资产或者执行其他恶意行为。

干扰正常功能

SDK滥用或不当使用任何网络、系统机制、系统功能、系统漏洞,进行干扰其他应用或影响终端设备功能的恶意行为,影响用户的正常操作和体验。

[h2]SDK功能规范

为了给SDK使用者提供优质的用户体验,SDK应确保能够为用户提供正常完整、稳定流畅、可实现、有吸引力的功能,不得含有影响用户体验的不合理功能。

SDK全量业务功能说明:SDK应向使用者提供全量业务功能说明,以便使用者能够全面了解SDK的功能范围和使用方法,更好地利用SDK的各项功能,赋能SDK使用者开发出功能丰富、性能卓越的应用。

SDK配置能力提供要求:SDK向使用者提供功能服务应同时提供相关业务功能及个人信息配置能力。

SDK兼容性要求:为了确保SDK的顺利集成和稳定运行,应向SDK使用者明确阐述兼容性要求和设备版本约束,避免因兼容性问题给SDK使用者带来不必要的困扰和影响。

[h2]SDK处理个人信息要求

SDK在处理人人信息时需要尊重用户隐私, 确保遵守适用的法律法规,履行个人信息保护义务,并遵循合法、正当、必要和诚信的处理原则。同时,您应协助SDK使用者合规地使用SDK,保护用户隐私。您的SDK在处理用户个人信息时,需要遵守的要求包括不限于如下:

(1)最小必要原则;

(2)隐私告知;

(3)获取用户同意;

(4)声明SDK所需权限及其使用场景,由SDK使用者应用软件向系统申请相关权限。

[h2]SDK内容合规要求

SDK需严格遵循《中华人民共和国网络安全法》、《网络信息内容生态治理规定》等相关法律法规,保障网络安全,确保SDK为用户提供合法、安全、健康的服务。

SDK不得制作、复制、发布和传播含有法律法规禁止的信息,包括但不限于:

(1)反对宪法所确定的基本原则的;

(2)危害国家安全,泄露国家秘密,颠覆国家政权,破坏国家统一的;

(3)损害国家荣誉和利益的;

(4)煽动民族仇恨、民族歧视,破坏民族团结的;

(5)破坏国家宗教政策,宣扬邪教和封建迷信的;

(6)散布谣言,扰乱经济秩序和社会秩序的;

(7)散布淫秽、色情、赌博、暴力、凶杀、恐怖或者教唆犯罪的;

(8)侮辱或者诽谤他人,侵害他人名誉、隐私和其他合法权益的;

(9)歪曲、丑化、亵渎、否定英雄烈士事迹和精神,以侮辱、诽谤或者其他方式侵害英雄烈士的姓名、肖像、名誉、荣誉的;

(10)宣扬恐怖主义、极端主义或者煽动实施恐怖活动、极端主义活动的;

(11)制作、复制、发布、传播含有淫秽、色情、暴力、血腥、邪教、迷信、赌博、引诱自杀、恐怖主义、分裂主义、极端主义、网络欺凌行为,教唆犯罪或者传授犯罪方法等危害未成年人身心健康内容信息的;

(12)其他法律法规禁止的内容。

[h2]SDK知识产权规范

SDK及其内容应具备完整权利或充分授权,不得侵犯他人知识产权(包括商标、版权、专利、商业秘密和其他专有权利)或其他合法权益,遵守适用法律法规和行业标准。

[h2]SDK未成年人保护要求

SDK应确保不存在危害未成年人身心健康的内容和行为,并需遵守《中华人民共和国未成年人保护法》、《未成年人网络保护条例》及其他适用法律法规和行业标准。当您的SDK向未成年人收集任何个人信息和敏感数据时,您必须遵守适用的未成年人隐私保护法规,如欧盟《通用数据保护条例》(GDPR)、中国《个人信息保护法》、《App违法违规收集使用个人信息行为认定方法》、《儿童个人信息网络保护规定》以及其他适用法律法规。

[h2]SDK用户权益保障要求

SDK提供服务的全生命周期内协助SDK使用者共同保障最终用户权益,不应发生违规侵害用户权益行为。

鸿蒙生态伙伴SDK专区与优选库

[h2]鸿蒙生态伙伴SDK专区

鸿蒙生态伙伴SDK专区旨在帮助开发者获得优质的闭源SDK,与SDK伙伴、开发者共建一站式的SDK选用平台,实现开发者、SDK伙伴与鸿蒙生态共荣。鸿蒙生态伙伴SDK专区汇聚热门SDK,助力开发者构建高品质HarmonyOS应用,通过安全检测、审核等机制有效保障SDK的安全、纯净、可控,同时,为伙伴SDK提供精准曝光和版本管理等能力,实现高效连接,优化SDK的获取和集成体验。

开发者可以在鸿蒙生态伙伴SDK专区高效便捷的获取SDK,同时支持开发者在IDE里分类查看、搜索,并且支持一键添加SDK到工程中。

[h2]SDK优选评估

鸿蒙生态伙伴SDK优选库是基于生态市场已上架SDK产品的精选方案,旨在推动鸿蒙生态高质量发展,促进开发者共享生态价值。该优选库严格遵循国家标准、行业规范等多元评估体系,从合规性、个人信息保护、网络安全、生态贡献度及开发者体验等多个维度进行综合评定。通过评定的SDK将获得“优选”认证标识,为开发者提供选型参考,并通过开发者联盟和DevEco Studio触达应用开发者。SDK优选模型如下图所示:

在2025年8月底,GIIC联盟正式启动SDK认证工作,认证通过的SDK将获得GIIC颁发的认证证书。通过GIIC认证的SDK默认满足优选库基础准入评估要求,进入优选评估流程。另一方面,工信部例行对SDK进行抽检并通报违规SDK,优选库基于抽检结果以及公开的漏洞情报和舆情信息,持续对库内的SDK进行风险管理。若SDK存在安全或合规问题,会触发去优选机制。产业联盟认证&政府监管&优选库三者协同流程如下:

OpenHarmony三方库中心仓

OpenHarmony三方库中心仓(简称“OHPM平台”)由开放原子开源基金会进行运营与维护,是一个面向公众开放、用于管理和共享OpenHarmony三方库的平台,致力于环境良好的开源生态建设,并通过开放治理寻求更加丰富的开源资源共享与交流。OHPM平台聚合了丰富的HarmonyOS生态三方库,方便开发者一站式获取。个人/组织贡献者将开发好的三方库通过OHPM发布到中心仓。

三方库开发者将HarmonyOS生态三方库发布到OHPM平台,按以下步骤进行:

  1. 账号与基础配置:根据注册流程注册一个中心仓账号后,配置认证管理。
  2. 创建组织:在组织管理模块新增组织,填写组织名称和描述,组织名须与包名中的组织前缀一致。
  3. 发布三方库:账号和组织准备就绪后,即可按照官方指导的步骤创建及发布包。

应用开发者通过如下方式即可方便快捷的使用三方库:

  1. 应用开发者登录HarmonyOS生态中心仓,通过分类和关键字搜索需要的三方库信息。
  2. 应用开发者在应用开发时,通过OHPM包管理工具,将搜索到的三方库引入到应用依赖清单中。

HarmonyOS生态三方库发布与使用完整的流程如下图所示: