V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
wwwwwwwwwwww
V2EX  ›  分享创造

做了一个 iOS 相册清理工具,不只是找重复图——也聊聊两次被苹果审核拒绝的经历

  •  
  •   wwwwwwwwwwww · 5 天前 · 1062 次点击

    相册有 3 万多张照片,存储快满了。试了几款清理 App ,要么只能找重复图,要么扫出来一堆误判。干脆自己写一个。

    结果写着写着功能越来越多,大概两个月后变成了现在这个样子:PhotoSweep

    App Store 链接: https://apps.apple.com/app/id6759631286 免费下载,优惠码 PHOTOSWEEP2026 可以免费用一个月 Pro 。


    主要功能

    智能扫描( 8 个分类)

    一键扫描整个相册,分类找出:

    • 精确重复 / 相似图片
    • 模糊、失焦的照片(用 Vision 框架的 Laplacian 方差做的)
    • 截图和屏幕录制
    • 体积过大的文件
    • 重复视频
    • 按地理位置聚合的图片

    SwipeTriage (滑动分拣)

    类似 Tinder 的卡片界面——向右滑保留,向左滑删除。当你有几百张"也许要删"的照片时,这个效率比一张张看高多了。

    EXIF 元数据查看器

    选一张照片,马上看到完整 EXIF:相机型号、曝光、光圈、ISO 、GPS 坐标(带地图预览)。支持一键分享文本。

    照片健康报告

    给你整个相册打一个"健康分",列出具体的问题(比如"截图占了 3.2GB"),有行动建议。

    批量水印

    上传前加文字水印,支持字体大小、位置、透明度,一次处理多张。

    其他工具:截图拼接、网格切割( Instagram 九宫格)、照片/视频压缩、HEIC↔JPEG 转换、iCloud 诊断、存储分析。

    全部本地处理,没有服务器,没有账号,没有广告。


    技术栈

    • Swift / SwiftUI ,iOS 17+
    • Vision 框架做模糊检测( Laplacian 方差)
    • CoreImage 做相似图哈希比对
    • SwiftData 持久化,带 DB 损坏自动恢复
    • BGProcessingTask 后台扫描 + 断点续传
    • 37 种语言本地化( 478 个 key )
    • 450 个测试( 422 单元 + 28 UI/E2E )

    被苹果拒了两次,说一下经过

    第一次:Guideline 2.5.1 ( HealthKit 权限残留)

    早期有个功能想读 HealthKit 数据,后来放弃了。删掉了代码,也删掉了 .entitlements 文件里的条目,但忘了 Apple Developer Portal 的 App ID Capabilities 页面里还留着这个 capability 。苹果审核员发现了,拒了。

    教训:entitlements 是三层的——代码层、.entitlements 文件、Portal App ID Capabilities ,三个地方必须同步。

    第二次:Guideline 4.3(a)(与系统 App 功能重复)

    审核员认为和系统自带的"照片"App 功能没有实质区别。我加了三个明显差异化的功能( EXIF 查看器、健康报告、批量水印),重写了 App Store 描述,重新做了 Onboarding 来在第一次启动时就展示差异化,才通过。


    定价

    • 免费:无限扫描,每次最多清理 20 张
    • Pro 订阅:$0.99/周 或 $9.99/年,含 1 周免费试用
    • 优惠码 PHOTOSWEEP2026:免费用 1 个月(兑换方式:App Store → 头像 → 兑换礼品卡或代码)

    PhotoSweep 主界面

    有问题欢迎在这里问,或者 App Store 评论。做独立开发比较孤独,认真的 Feedback 对我来说很有价值。

    10 条回复    2026-03-20 17:32:10 +08:00
    loserwn
        1
    loserwn  
       5 天前
    我的照片和视频比楼主还多。有几个问题:
    * app 的逻辑是要把云端的照片的都加载下来,再进行对比吗?如果是,可能会出现我的本地空间不够加载全部照片的情况。
    * 如果照片规模达到 10w+ 是否有性能问题。(我之前使用一些云盘备份照片会有 highcpu 的问题。例如:tx 微云,每次备份照片手机都特别烫,耗电猛增。)
    wednesdayco
        2
    wednesdayco  
       5 天前
    感觉专门做个 app 意义不大,不如我 immich 好用,甚至能搜“截图”这样来快速删除手机里的截图相关的照片。
    cai314494687
        3
    cai314494687  
       5 天前
    之前在这里看到有人发过类似的 App
    karlfu
        4
    karlfu  
       4 天前
    美区 ip 显示兑换码无效
    aero99
        5
    aero99  
       4 天前
    上次用了 v2 也是一个网友开发的相册整理工具,是减肥瘦身的那种,结果不知怎么相册出了很多重复的,甚至有一个照片出现了几十张,另外处理完的照片在 iPhone 相册里面排序也乱套了。

    我想以后再也不对原始相册做第三方工具整理了,一定要包留原始的数据备份,处理也是最好单独弄出来一份再说。
    ronman
        6
    ronman  
       4 天前
    iCloud 上的照片支持吗?
    mankismi
        7
    mankismi  
       4 天前
    弯弯 ip 现实兑换码无效
    mankismi
        8
    mankismi  
       4 天前
    回报一下,几乎全被打上模糊了。即使阈值开到 200 总共就 8k 张 有 6k 打上模糊
    目前使用 16pro 照片也不全是 16pro 拍的
    另外排版很多都叠在一起,考虑相册那种吧 不要用瀑布流
    最好选可以有预览的方法,目前直接选择+重叠 没有删除的勇气
    cwliang
        9
    cwliang  
       4 天前
    头像不错
    cvooc
        10
    cvooc  
       4 天前
    国区兑换无效
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   3236 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 14:00 · PVG 22:00 · LAX 07:00 · JFK 10:00
    ♥ Do have faith in what you're doing.