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

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

  •  2
     
  •   nnccree · 4 天前 · 4882 次点击

    作为一名刚入门的 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 条附言  ·  4 天前
    兑换入口在 app store 里
    第 2 条附言  ·  4 天前

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

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

    更新了新的码

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

    再更新一次~

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

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

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

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

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

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