iOS软件开发需求说明
一、需求概述
开发一款面向iOS开发的工具类应用,核心实现IPA文件的第三方动态库注入/移除、重新打包及IPA签名功能,需支持1G及以上大文件处理,文件来源支持本地及本地服务器选择,满足批量操作、隐藏注入等核心诉求。
二、核心功能模块
(一)IPA动态库管理模块
1. 动态库注入
◦ 支持单/批量注入第三方动态库(.dylib/.framework等格式)到IPA文件中,支持“隐藏注入”模式(注入后不暴露动态库文件路径/特征,规避常规检测);
◦ 注入流程自动适配IPA文件结构,无需手动解压/修改目录,注入后保持IPA文件完整性;
◦ 支持从本地文件系统(相册、文件App)或本地服务器(局域网内HTTP/HTTPS/FTP)选择待注入的动态库文件及目标IPA文件。
2. 动态库移除
◦ 支持识别IPA文件中已注入的第三方动态库,支持单/批量移除指定动态库;
◦ 移除后自动重新打包为完整IPA文件,打包过程保留原IPA的资源、代码及配置文件。
3. 大文件适配
◦ 核心适配1G及以上大小的IPA文件处理,注入/移除/打包过程无内存溢出、卡顿或文件损坏,支持断点续处理。
(二)IPA签名模块
1. 证书签名
◦ 支持导入本地p12证书/描述文件(.mobileprovision),对处理后的IPA文件进行重签名,适配不同开发者证书(个人/企业证书);
◦ 签名过程自动校验证书有效性、匹配Bundle ID,签名失败时给出明确错误提示(如证书过期、权限不足)。
2. 仅打包功能
◦ 支持无需证书签名,仅将解压/修改后的IPA文件重新打包为标准IPA格式(满足文件结构规范,可用于本地测试)。
三、技术要求
1. 适配iOS 14.0及以上系统版本,支持iPhone/iPad全机型;
2. 大文件处理采用分片读写、内存映射(mmap)机制,避免高内存占用;
3. 本地服务器文件选择支持手动输入服务器地址、账号密码(如需),支持文件列表预览;
4. 动态库隐藏注入需规避iOS系统常规的动态库检测逻辑,注入后IPA可正常安装运行(无签名冲突)。
四、性能要求
1. 1G大小IPA文件的动态库注入/移除+打包全程耗时≤5分钟(在iPhone 14及以上机型);
2. 操作过程中CPU占用≤70%,内存占用≤500MB(避免设备卡顿/闪退);
3. 支持后台处理(可选),切出应用后核心打包/签名流程不中断。
五、交互要求
1. 界面简洁,核心操作(文件选择、注入/移除、签名)步骤≤3步;
2. 操作过程显示实时进度条及状态提示(如“正在注入动态库”“签名中”);
3. 处理失败时给出可落地的错误解决方案(如“IPA文件损坏,请重新选择”“证书与Bundle ID不匹配”)。
六、交付物
1. 完整可运行的iOS应用源码(含注释、工程配置文件);
2. 编译后的IPA安装包;
3. 核心功能使用文档、技术实现说明(含大文件处理、隐藏注入的核心逻辑);
4. 兼容性测试报告(不同iOS版本、不同大小IPA文件的测试结果)。