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

作为新手 iOS 独立开发者,我花了三个月做了一个对抗短视频成瘾的 app(送码)

  •  2
     
  •   nnccree · 24 天前 · 5422 次点击

    作为一名刚入门的 iOS 开发者,我用了三个月时间完成了人生第一个作品「歇歇」。这是一个帮助对抗短视频成瘾(以及其他已成瘾 app )的工具,今天想和大家分享这个项目的故事。​ ​

    从自身痛点说起​

    两年前我离职开始独立开发,按理说时间很充裕,但实际上没有束缚之后也更容易浪费时间了:​

    • 早上打开抖音随便看看,结果不知不觉过去一小时​
    • 中午休息刷会小红书,结果错过了午饭时间​
    • 晚上躺床上刷视频,越刷越精神,结果又熬夜了​
    • 计划的学习和开发任务,总是完不成​

    作为一个 INTJ ,尽管我试图用理性和自我约束来解决,但短视频的算法实在太会激发多巴胺了。每次都会想"就看一会儿",结果总是难以自拔。更要命的是,这种行为模式严重影响了睡眠质量和工作效率。看着一天天过去,产出寥寥,我意识到必须做点什么。​ ​

    为什么开发「歇歇」?​

    我尝试过:​

    • iOS 自带屏幕时间:太容易取消限制了,可以很轻易地+15 分钟,刷了很久之后才意识到自己又沉迷了​
    • 直接卸载 App:不太方便,毕竟抖音小红书作为中文搜索引擎真的还是挺好用的(比起百度)​ ​

    最近半年我刚好开通了苹果开发者,想先从解决自己需求出发。我翻看苹果文档,发现了 Screen Time API ,我想到或许可以搞点新的玩法:如果能设计一个特别的屏障页面,让想要打开短视频 app 前必须付出一点努力,是不是就能帮助我们分辨「真的需要用」还是「单纯习惯性打开」?我也发现并试用了市面上一些类似的 app ,也并没有完全能够符合我的要求的。​ ​

    主要功能

    于是这三个月我就在开发「歇歇」,开发流程就是先 Figma 设计,然后用 SwiftUI 实现(我觉得还是比较方便可靠的,也没有一些评价说得这么糟糕😂),代码大部分手搓,少部分页面是让 Claude 直接生成的。目前的主要功能如下:​

    • 将 app 解锁游戏化的"专注挑战"机制(后续会增加更多玩法): ​
      • 想刷抖音?先画个完美圆​
      • 想看小红书?摇 60 下手机​
      • 想刷微博?快速点击 200 次 ​
      • 只有完成这些小游戏,才能临时解锁 App ,巧妙地打断无意识刷屏行为。​
      • 解锁了一段时间后(比如 5 分钟),app 会重新上锁,如果要继续使用,需要再做一次挑战​
    • 多维度数据分析(比系统自带的统计详细得多):​
      • 小时级别使用统计​
      • App 使用热力图详情​
      • 周同比数据对比​ ​ ScreenBreak screenshots

    https://apps.apple.com/us/app/screenbreak-screen-time-focus/id6673906141

    下面是月度会员的兑换码,欢迎试用~​

    X6PJK3YXXPLX​
    JH6JAKLMRJNA​
    KAPH99EXJJNK​
    NRJH7YWTHTFE​
    MM7N43EF9PT9​
    TNNR7E37JPJ4​
    MYX79MELYEE4​
    9RR73XRTKH9T​
    YXJJF6XLM6NT​
    ELJNXWWHR7JE
    
    第 1 条附言  ·  24 天前
    兑换入口在 app store 里
    第 2 条附言  ·  24 天前

    更新了新的月度会员兑换码~

    HW9L9NLHLXMW
    64RNPTMT4YAH
    MKX4NA7YF6HT
    4MLE6RK3W9HT
    NRNPXKYXENWY
    WNFL799F3NR7
    96F66LW467EJ
    7949H6J3WH39
    7W3ML7HAHH4R
    EJHXM4XAF6RT
    
    第 3 条附言  ·  24 天前

    更新了新的码

    MKTH9EKWLWXY
    YKM37E46PF43
    6N6LNAHLLJM6
    PHYKXT4WPW9K
    7WFEK3XKLAK7
    NX4K46T4LEPP
    4NNTH9LHWY6P
    Y7NM36JEK39K
    FK9FFXWWNME6
    M4EK9WTL3L7J
    
    第 4 条附言  ·  22 天前

    再更新一次~

    JETYE74WK747
    M9E3RWEHYWTE
    NXKTPN3YTXPL
    AHHR9PANXE9J
    AY4EPYKFTMYJ
    9XT3YFXKNEXM
    X73HR996E4JJ
    K77XX3A9NNM4
    KHYATA6MTL6H
    EYEEEFP7A6TN
    
    97 条回复    2024-12-14 09:40:32 +08:00
    pirlo21
        1
    pirlo21  
       24 天前
    火钳刘明
    abc1310054026
        2
    abc1310054026  
       24 天前
    有点意思
    hebwjb
        3
    hebwjb  
       24 天前
    有创意
    wyman222
        4
    wyman222  
       24 天前
    17.6 版本,放弃了,感谢,留给有缘人吧
    nnccree
        5
    nnccree  
    OP
       24 天前
    谢谢捧场😄 @pirlo21 @abc1310054026 @hebwjb
    请问您是 iOS 啥版本的?因为我的设备是 iOS 17 ,所以就固定了;而且我也不确定 Screen Time API 在更低版本的稳定性(据说刚出的时候很多 bug ) @wyman222
    GoldenMan
        6
    GoldenMan  
       24 天前
    ELJNXWWHR7JE ,已用,感谢
    ajiangyanhao123
        7
    ajiangyanhao123  
       24 天前
    没找到兑换码的使用入口
    seven123
        8
    seven123  
       24 天前
    有想法,UI 也不错
    Yukicoding
        9
    Yukicoding  
       24 天前
    @nnccree 请问兑换入口在哪
    nnccree
        10
    nnccree  
    OP
       24 天前
    @ajiangyanhao123 嗷忘记写指南了。在 app store 里可以操作兑换
    konnnnn
        11
    konnnnn  
       24 天前 via iPhone
    设计得很好,做任务的时候可以反思下到底是需要查信息还是无意识; 不过我建议把个性化推荐关掉
    sunshijie
        12
    sunshijie  
       24 天前
    YXJJF6XLM6NT ,已用,感谢
    nnccree
        13
    nnccree  
    OP
       24 天前
    @Yukicoding 不好意思,在 app store 里可以兑换,见置顶的截图
    oliveira
        14
    oliveira  
       24 天前
    有想法,有创意!
    nnccree
        15
    nnccree  
    OP
       24 天前
    @konnnnn 是可以在游戏结束后,让用户填写的目的,这个挺好的 hh
    请问您说的个性化推荐是什么?
    Yukicoding
        16
    Yukicoding  
       24 天前
    X6PJK3YXXPLX 已用,感谢

    BTW ,发现一个小问题,选择屏蔽生效时段时,当我选择晚上 22:00 - 6:00 (我是想当晚 22 点后到第二天的 6:00 都做限制),但这个时候会出现:时间窗口需要至少 15 分钟的提示 @nnccree
    nnccree
        17
    nnccree  
    OP
       24 天前
    @Yukicoding #16 你说这个确实是一个问题,我之前也考虑过会不会有人想跨天屏蔽。我近期看一下怎么改,应该是可以支持的
    YJi
        18
    YJi  
       24 天前
    有意思! JH6JAKLMRJNA 已用! 感谢!
    hillw4h
        19
    hillw4h  
       24 天前
    NRJH7YWTHTFE 已用
    konnnnn
        20
    konnnnn  
       24 天前 via iPhone
    @nnccree 小红书可以关闭个性化推荐,这样每次下拉不会用算法推荐;
    follower
        21
    follower  
       24 天前
    兑换不了啊,提示:this code contains an invalid character
    nnccree
        22
    nnccree  
    OP
       24 天前
    @follower 是不是把换行空格复制进去了?有试过其他的吗
    zlwen
        23
    zlwen  
       24 天前
    赞,有同样的想法,但执行力不够😂
    jiujiutang
        24
    jiujiutang  
       24 天前
    17.3.1 用不了
    byby
        25
    byby  
       24 天前   ❤️ 2
    lz 加油,再做个对抗性成瘾 app
    oldbruce
        26
    oldbruce  
       24 天前
    没有解决刷了停不下来的问题。

    只给启动设置了一点障碍。

    建议方法还是尽量从算法构建的心流中跳出来。手机壳上加个番茄钟,刷的时候倒计时。这样容易终止。
    yier4ha
        27
    yier4ha  
       24 天前
    支持
    oldbruce
        28
    oldbruce  
       24 天前
    是不是都被用完了
    xingchenxf
        29
    xingchenxf  
       24 天前
    想法很好啊, 不过你是怎么做到 “锁定” 其他 APP 的? iOS 提供了这种功能吗?
    lambdaX999
        30
    lambdaX999  
       24 天前
    跟 forest 有啥区别
    nnccree
        31
    nnccree  
    OP
       24 天前
    @jiujiutang 收到,后面我试试放宽一点版本要求
    nnccree
        32
    nnccree  
    OP
       24 天前
    @oldbruce #26 感谢反馈,我个人的体验是,解锁个两三次就有点累了,“可能”就会开始去干正事了😂 (比如上厕所时刷手机,可能就懒得解锁第二次了)
    nnccree
        33
    nnccree  
    OP
       24 天前
    @xingchenxf 哈哈你可以翻一下苹果文档,有相关机制的
    nnccree
        34
    nnccree  
    OP
       24 天前
    @lambdaX999 我很久没用过 forest 了 hhh 确实都是专注类 app ,鼓励减少屏幕时间的,只是我这个是更加暴力一点,需要更少的自控力😄 您可以试试
    windorz
        35
    windorz  
       24 天前
    女朋友需要这个, 求一个兑换码, 哈哈哈
    nnccree
        36
    nnccree  
    OP
       24 天前
    @zlwen 我也是有这个问题,平时收集了很多 idea ,基本都放过去了...
    imliukai
        37
    imliukai  
       24 天前
    有创意,OP 可以给我发一个吗? Thanks♪(・ω・)ノ

    aW0ubGl1a2FpMjMzM0BnbWFpbC5jb20=
    nnccree
        38
    nnccree  
    OP
       24 天前
    @oldbruce #28
    @windorz
    @imliukai
    置顶附言已更新
    oldcaptain666
        39
    oldcaptain666  
       24 天前
    @oldbruce #28 同问
    windorz
        40
    windorz  
       24 天前
    @nnccree 谢谢 HW9L9NLHLXMW 已使用
    oldbruce
        41
    oldbruce  
       24 天前
    96F66LW467EJ 已使用
    zeroFans
        42
    zeroFans  
       24 天前
    能加上家庭共享功能吗,想和我老婆共享,现在能不能家庭共享是我现在非常看重的一点
    nnccree
        43
    nnccree  
    OP
       24 天前
    @zeroFans 这个我考虑一下哈哈哈
    zeroFans
        44
    zeroFans  
       24 天前
    另外,我看现在的限制只有定时可次数,能加上一个总使用时间吗
    这个规则下的 N 个应用,只要时间加一个超过总使用时间,就加上限制这种
    nnccree
        45
    nnccree  
    OP
       24 天前
    @oldcaptain666 置顶有更新
    jinjidebanglin
        46
    jinjidebanglin  
       24 天前
    android 有类似的 APP 吗
    nnccree
        47
    nnccree  
    OP
       24 天前
    @zeroFans #44 我有考虑过,我就是感觉和次数限制差不多,就暂时没花时间另外开发了;方便问您想捆绑哪一些 app 吗?
    nnccree
        48
    nnccree  
    OP
       24 天前
    @jinjidebanglin 不了解安卓,不好意思哈
    18xlX5iTe9mdoau0
        49
    18xlX5iTe9mdoau0  
       24 天前
    其实这事很简单,直接不安装不注册就行
    zeroFans
        50
    zeroFans  
       24 天前
    @nnccree #47 消耗时间又不是必须的 app ,因为每天可能今天刷抖音就超过 3 小时了,周末刷知乎又是几个小时,想控制所有这种类型的 app 打包到一起,不超过 x 小时。
    对我而言是:微博、知乎、小红书、抖音、哔哩哔哩,打包放一起
    nnccree
        51
    nnccree  
    OP
       24 天前
    @dsgdsfh 我觉得中文互联网里面,抖音小红书的内容是最新最全的,完全不用有点可惜
    zeroFans
        52
    zeroFans  
       24 天前
    @nnccree #32 如果能做到开启 app 的时候加一个提示提示闹钟,岂不是更完美
    asdhak
        53
    asdhak  
       24 天前
    @nnccree #5 15.4.1
    Daniel0829
        54
    Daniel0829  
       24 天前
    太贵了,要是便宜点,我倒是想入手个终身版。
    nnccree
        55
    nnccree  
    OP
       24 天前
    @zeroFans #50 你说这种更复杂的规则,后续应该会想办法支持吧。我自己的用法一般就是次数限制,给抖音小红书设定了每天 5 次免解锁,5 或者 10 分钟上锁,这样一天内可以比较顺畅地刷几十分钟,然后就是可能每个小时偶尔解锁一两次这样
    nnccree
        56
    nnccree  
    OP
       24 天前
    @Daniel0829 您可以等等看,或许过节会弄点活动吧~ 不过我在国区的定价已经是全球里最便宜的了
    mintor27
        57
    mintor27  
       24 天前
    想尝试一下,求个码 Z2Vla2N4MjdAZ21haWwuY29t
    Wobbler
        58
    Wobbler  
       24 天前
    没有可用的了
    nealHuang
        59
    nealHuang  
       24 天前
    ios 不是有 app blocker 吗
    Lisa9527
        60
    Lisa9527  
       24 天前
    求个码。想体验一下
    nnccree
        61
    nnccree  
    OP
       24 天前
    @mintor27
    @Wobbler
    @Lisa9527
    置顶已更新
    nnccree
        62
    nnccree  
    OP
       24 天前
    @nealHuang 对,是有挺多这类 app ;我这个算是微创新吧,加了解锁游戏的机制,把数据分析做得更全面一点,界面花里胡哨一点😄
    starz
        63
    starz  
       24 天前
    然后变成沉迷小游戏了 hhh
    nnccree
        64
    nnccree  
    OP
       24 天前
    @zeroFans #52 应用解锁后过一段时间会自动上锁,我理解这个功能就是闹钟番茄钟的用法了。即使用户选择再次解锁,那至少也被提醒已经过了一段时间了
    nnccree
        65
    nnccree  
    OP
       24 天前
    @starz 用无聊对抗无聊吧 hhh
    SmallPlus
        66
    SmallPlus  
       24 天前
    7WFEK3XKLAK7 已用,页面 ui 感觉不错,试用一下
    bomb77
        67
    bomb77  
       24 天前
    谢谢,Y7NM36JEK39K 已用,我来试试
    bomb77
        68
    bomb77  
       24 天前
    @bomb77
    我的每周报告计算很长时间,然后结束了页面是空白。。
    nnccree
        69
    nnccree  
    OP
       24 天前
    @bomb77 #68 请问您的设备和 iOS 版本是多少?您可以试一下后台关了这个 app ,再重进试试看,这个问题应该是小概率出现的
    arron2022
        70
    arron2022  
       24 天前
    @nnccree #69 OP 大大还有码么 后来的 v2er 也想用用 谢谢
    wizChen
        71
    wizChen  
       24 天前 via iPhone
    版本号要求好高
    nnccree
        72
    nnccree  
    OP
       24 天前
    @wizChen 请问您是什么 iOS 版本?
    zzNucker
        73
    zzNucker  
       24 天前
    确实有点意思,不过感觉最终对抗下来被删除的还是这个 233333
    nnccree
        74
    nnccree  
    OP
       24 天前
    @zzNucker 哈哈一开始总是有一段时间适应期嘛😄
    Shawn01
        75
    Shawn01  
       24 天前
    @nnccree 求一个兑换码
    wizChen
        76
    wizChen  
       24 天前 via iPhone
    @nnccree #72 17.4.1
    EndlessMemory
        77
    EndlessMemory  
       24 天前
    他们是自甘沉沦的
    nnccree
        78
    nnccree  
    OP
       24 天前
    @EndlessMemory 我的理解是,推荐算法就跟药物一样,适量是有益的,但也容易被滥用;因此是要被管控的
    Lisa9527
        79
    Lisa9527  
       24 天前 via iPhone
    @nnccree 呃,刚看到,空了
    OHYOLO
        80
    OHYOLO  
       24 天前 via iPhone   ❤️ 1
    这个跟一个 app 叫 onesec 有点像,也是在打开 app 时拖你😂
    nnccree
        81
    nnccree  
    OP
       24 天前
    @OHYOLO 哈哈我也试用过那个,解锁是有一点像,不过我觉得没这么费劲吧😂;另外界面有一点凌乱,我觉得可以做得更好一些
    Mesosome
        82
    Mesosome  
       24 天前
    把小红书的个性化推荐关了,每次基本打开就没有啥兴趣看了。都是一堆不真实的东西,基本开了就关了。没有瘾了
    sdzbzyc
        83
    sdzbzyc  
       24 天前
    @nnccree 求个兑换码,急需解决成瘾
    18xlX5iTe9mdoau0
        84
    18xlX5iTe9mdoau0  
       23 天前
    @nnccree #51 我之前树莓派自建 DNS 屏蔽了全部字节跳动和快手的 CDN 域名,但是我父母看,就解开了,但是我从不看这个,其实传统搜索引擎依然能完成这些事情,而且这些平台有网页版,需要用的话电脑用网页版就行
    acorngyl
        85
    acorngyl  
       23 天前
    建议,如果没有没 ios18 的 api ,把版本尽量放低。
    现在 ios17.6 锁了,只能 ios18 才能下,等于直接把 iphone15 以下大部份用户卡了,太影响受众了。刚看了下 xcode ,模拟器还可以支持到 ios15 ,OP 可以试试。
    大号不在国区,晚上用家人手机试试去,哈哈哈。
    neptuno
        86
    neptuno  
       23 天前
    对抗任何上瘾,我都是一个技巧,倒数五个数(或者五个视频),倒数完就立马关了
    cat
        87
    cat  
       23 天前
    @acorngyl 为啥会觉得“等于直接把 iphone15 以下大部份用户卡了”,iPhone 15 以下的用户也会升级系统的啊…
    nnccree
        88
    nnccree  
    OP
       23 天前
    @acorngyl 我的手机就是 iPhone 11 ,刚开始开发 app 的时候是 iOS 17 ,现在也升到 18 了; 支持比 iOS 17 更低的版本概率比较小,因为 Screen Time API 必须要实机调试,而且低版本的 bug 肯定会更多了...
    nnccree
        89
    nnccree  
    OP
       23 天前
    @neptuno 那你自控能力还是很强的,不容易上头
    bomb77
        90
    bomb77  
       23 天前
    @nnccree #68 关了后台重开好了,谢谢
    OHYOLO
        91
    OHYOLO  
       23 天前 via iPhone
    这个有没有 inesec 那样的 porn 锁定,有的话我直接去支持一个☝️
    nnccree
        92
    nnccree  
    OP
       23 天前
    @OHYOLO #91 我没用过那个功能呢,大概是怎么用的呢?
    OHYOLO
        93
    OHYOLO  
       23 天前 via iPhone   ❤️ 1
    @nnccree 深度体验了一下,对比 onesec 提点意见吧,毕竟算是同功能产品。1. 你的这个打开 app 的有些游戏过于简单了(至少对我来说,手机瘾大的时候这些障碍真不在话下),游戏设计应该更倾向于复杂繁琐而不是趣味,比如 onesec 的拿着手机转圈,或者干等很久且一打断就得重新来过。2.游戏设计应该加入渐进的过程,比如第一次打开点 200 下第二次就得 250 下。3.直接解锁次数最低设置到 0 , 解锁时长应该把 1234 都加进来而不是 5min 起步。4.歇歇 app 或者屏蔽规则页面也能像其他 app 一样设置成想要打开做游戏,避免忍不住直接去 app 里把规则删了。5.删除规则左滑删除而不是打开在最底下删除。最后,onesec 的 porn 限制指的是,识别你的任意浏览器(可能不止浏览器)的显示内容,假如发现是在访问 porn 内容,就会直接阻止原页面显示。同理,你的 app 可以限同 制 app 网页端浏览吗?比如我设置了 b 站手机端的规则,那在浏览器里看 b 站能否也被限制?
    nnccree
        94
    nnccree  
    OP
       23 天前
    @OHYOLO #93 感谢回复,很用心的评测!
    1. 第一版没有把每个功能做得很深,现在游戏是很少,也没有难度设定,这个是后续的改进方向;
    2. 您这个建议很好,后面应该也会采用,加一个设定;
    3. 这个图开发省事,目前只有几个预设值,后面应该允许用户自定义的;我没有提供太多选项是因为觉得有点凌乱
    4. 删除规则和删除 app ,都应该加(更难的)限制,这也是后面需要加的功能
    5. 删除规则还是麻烦一点好 hhh
    6. porn 这个我后面调研看看,我个人不用手机看这个😂 对网页的限制我没有很细致的调研,不过听说似乎苹果提供的机制只能限制 safari 的,其他浏览器好像禁不了

    再次感谢您的评测🙏
    zeroonetwo
        95
    zeroonetwo  
       22 天前   ❤️ 1
    产品很棒,为开发者点赞 👍
    也有些小建议,
    1. 解锁方式最好能选难度;再多加点玩法,比如猜数字
    2. 未来如果升级删除规则,留个临时解锁的方案,避免特殊情况
    3. 加些屏蔽模版,比如微信、QQ 等常用的,来个统一方案,用户无脑选就好了
    最后还是想求下码,哈哈
    nnccree
        96
    nnccree  
    OP
       22 天前
    @zeroonetwo 感谢反馈~
    1. 玩法增加和难度调整,已经在考虑啦
    2. 好建议呢,是应该有个暂停的功能,这个也考虑一下
    3. 模板也是挺有意义的
    稍等一会,我等会再发一次🐎
    nnccree
        97
    nnccree  
    OP
       22 天前   ❤️ 1
    @zeroonetwo 置顶已更新
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1302 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 17:30 · PVG 01:30 · LAX 09:30 · JFK 12:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.