独立开发者节点

愿每一位独立开发者都能保持初心,获得一个好的结果.

956826374qq

为什么我做儿童 App,坚决不强制关闭目标 App

  •  
  •   956826374qq · 3h 57m ago · 274 views

    我跟我家娃为了短视频吵过很多次架。

    有一次吵到凌晨,他哭着问我:"你为什么总是把它突然关掉?"

    我说,"因为时间到了。"

    他哭得更厉害,说:"我都不知道还剩几分钟。"

    那天晚上我躺在床上想了一夜 —— 也许错的不是他,是"突然把它关掉" 这件事。


    一、孩子不是被屏幕困住的,是被"算法的暗河" 困住的

    我家娃是上小学没多久开始迷上短视频的。

    一开始我没太当回事,觉得不就是看几集动画的事。后来某一天我注意到,他从动画切到了那种 15 秒一条的算法流。眼神不一样了 —— 你能感觉到他在被某种我看不见的东西反复牵引。

    短视频的危害,跟糖果不一样。

    糖果你看得见 —— 一颗、两颗、十颗。

    短视频是看不见的,因为它没有"一颗" 的概念。它是一条无穷无尽的河,每滚一秒,算法都把河水换了一种味道。你以为孩子是在"看视频",其实他是在被算法做 A/B 测试 —— 上一条 9 秒,下一条 12 秒;上一条是搞笑的,下一条是惊险的;每一次滑动,他的多巴胺曲线都被重新调一次频率。

    这种东西的危险性,在于没有节点

    打游戏会有"这一局结束了"。看动画会有"这一集播完了"。但短视频没有"这一条结束了" —— 它一直在,一直续,一直变。

    你想让一个孩子"自己停下来",前提是他能感觉到"我快结束了"。

    短视频偏偏就是被设计成让人感觉不到这个节点的。


    二、市面上的解决方案,本质都是"机器代替家长吼"

    我去 App Store 找过解决方案。

    家长控制类的 App 我下载过五六个,名字我就不点了。每一个的核心逻辑都一样 —— 时间到 → 强制关闭 → 显示锁屏

    我用过之后心里很复杂。

    它们都"有效",但每一个都加剧了我家的那场战争 —— 因为它们做的事情,跟我吼孩子是一样的,只是把吼的人换成了机器。

    更让我难受的是那个被强制关掉屏幕的瞬间

    我看着孩子从震惊,到愤怒,到哭闹,意识到一件事 —— 这不是工具的错,是产品哲学的错。所有这些产品都把"控制权" 设计成了"剥夺权"。它们替家长按下了那个最伤孩子的按钮,然后家长以为自己"管住了"。

    但孩子学到的不是"我该停了"。

    孩子学到的是:"屏幕是会突然消失的东西。"

    这是个心理学里老套但管用的规律 —— 你越是把一个东西突然拿走,人对它的渴望反而越强。不只是孩子,你我都这样。手机突然没电,你会比平时更急着想用手机。Wi-Fi 突然掉线,你会比平时更想刷视频。

    孩子也是人,而且是更没有自控能力的人。

    吵到第无数次的时候,我开始反思一件事:

    这件事的本质,真的是"孩子自控力差" 吗?还是我们做家长的,用了一种暴力的方式去解决一个本不该用暴力解决的问题?

    那段时间我做开发已经做了很多年,但我从来没认真想过"自己做一个" 这种事。这次不一样。我躺在床上想了大概一个星期,有一天早上起来,跟他妈妈说:

    "我自己做一个吧。"

    她问我,"做什么样的?"

    我说,"不强制关闭的那种。"


    三、六阶段渐进式提醒 —— 设计起点是那句"我都不知道还剩几分钟"

    我后来的设计,有个工程上的名字叫"六阶段渐进式提醒",听起来挺正经。但它的设计起点,就是那天晚上我家娃哭着说的那句话。

    整套流程是这样的,每个数字背后我都跟自己吵过架:

    0%~59% 使用时间 ── 完全无声。 系统连个通知都不发,他在干嘛它不管。不要在前期就开始"指指点点",那是对孩子注意力最大的破坏。前期的沉默,是这个产品的尊重。

    60%~74% ── 第一次提醒。 一条温柔的小通知 + 一个 5 秒的顶部小横幅。文案是"还有一段时间可以玩",**不是"你还剩 26 分钟"**。这是产品设计里非常关键的一点 —— 儿童心智不接受精确的倒计时。"26 分钟" 对成年人是事实,对孩子是焦虑。"还有一段时间" 反而给他足够的心理空间。

    75%~89% ── 第二次提醒。 同样的横幅,文案换成"快到时间啦"。中间这一段,是让孩子在游戏或视频里"逐渐准备结束" 的心理窗口。

    90%~99% ── 第三次提醒。 横幅停留时间从 5 秒拉到 8 秒,文案换成"差不多该停一下了"。8 秒,是反复调试出来的 —— 5 秒孩子根本来不及看完,10 秒以上又会被当成弹窗忽略。这种数字看起来很 trivial,但每一个都是反复测出来的。

    100%~104% ── 这时候才出现全屏阻断。 但不强行关掉他正在用的 App —— 而是在它上面叠一层"挡板",挡板上有一个 PIN 输入框,只有我或者他妈妈能解。

    它是个"暂停按钮",不是个"删除键"。

    105% 以上 ── 维持阻断,我或他妈妈那边收到一条提醒。

    你仔细看的话会发现一件事 —— 从第一次提醒到最后阻断,中间有差不多 40% 的时间窗口。

    这 40% 不是工程师认为的"系统在等待",是一个孩子的脑子里在做"我快结束了" 的预演。

    等他真被挡住的时候,他脑子里已经经历过三次"快结束了" 的演练。

    **不是"突然剥夺",是"逐渐告别"**。


    四、关键不是"挡住孩子",而是不替家长按那个按钮

    我做这个 App 一年了。

    这一年里我删过最多的代码,就是各种"强制" 开头的函数 —— forceStop()forceClose()forceLock()

    一开始觉得这些函数名很爽。删完之后才意识到,这些"爽" 都不是我家娃要的,是 30 多岁的我想象一个 10 岁孩子应该被怎么对待的爽。

    最后那块挡板,我特意没让它有"关闭" 按钮。只有家长用 PIN 才能解。

    意思很明确 —— 时间到了,孩子不能再一个人决定继续玩了。这件事现在需要跟爸妈一起商量。

    这是这个产品的另一个核心设计:**100% 的阻断不应该是"机器替家长按了关闭键",而应该是"机器把家长和孩子重新放回同一个房间"**。

    强制关闭这件事,短期有效,长期有毒:

    • 短期是父母觉得"我控制住了"。
    • 长期是孩子学到"屏幕会突然消失",于是产生囤积式焦虑,反而玩得更凶。
    • 更长期是孩子和父母之间形成"屏幕 = 敌人 = 父母拿工具对付我" 的心理模式。

    这是很多亲子关系恶化的真正起点。


    五、孩子的变化 —— 从大哭到"爸爸我看完了"

    我把这套设计跑给我家娃用了大概两个月。

    我没跟他说"爸爸做了一个 App 来管你"。我跟他说,"爸爸做了一个东西,让你知道时间还剩多少,你试试。"

    他用得很别扭。 但他不再因为"突然被关掉" 而崩溃了。 他开始会在第二次提醒出现的时候,自己小声嘟囔一句"快结束了"。 到了第三次提醒,他会主动说"再看一个就停"。 到了最后那个挡板出现的时候,他不再大哭了。他会跑过来跟我说:"爸爸,我看完了。"

    变化不是一夜之间发生的。

    是从"突然剥夺" 变成"逐渐告别" 的那 40% 时间窗里,他慢慢学会了一件事 —— 一个东西结束之前,是会有信号的

    而这,对一个 10 岁的孩子来说,可能比"少看 30 分钟视频" 重要得多。


    六、这只是开始 —— 接下来一年我会在这里写什么

    这是这个号的第一篇。

    我做这个 App 一年了,过程比我想象的难一百倍。每一个我以为"产品上理所应当" 的决策,做下去都遇到了系统层、工程层、和我自己作为父亲的三重拷问。

    接下来这一年,我会把这些一篇一篇写下来:

    • Android 系统层的难:Android 12 之后,系统把"强制关闭其他 App" 这条路彻底打死了 —— 我以为我做的设计很温柔,后来才发现就算我想"强制" 都做不到了。我用什么替代路径活下来的。
    • 测试上的难:我写了 300 多个单元测试,全部通过,但真机上还是连出几个 P0 阻塞 bug —— 关于"假闭环" 这件事,工程师集体都得说真话了。
    • AI 协作上的难:我用 Claude 写代码,但我也得防着 Claude 自己睁眼说瞎话 —— 我给它加了一套"招供机制",这个机制本身翻车过 25 次。
    • 产品决策上的难:给孩子做积分奖励吗?给"今天屏幕用得少" 的孩子送装备吗?给"连续 7 天打开 App" 的孩子奖励吗?这些"看起来对" 的功能,我每一个都拒绝了,过程比同意更费力。
    • 跟自己作为父亲的较劲:每一个决策都得回头问自己 —— 我做这个,是为了让我家娃更好,还是为了让我自己更心安?这两个问题的答案,经常不一样。

    不是技术教程。是一个父亲做一个产品的过程,中间所有的反复、错误、自我审判,和慢慢长出来的产品哲学。

    做温柔的工具,写硬核的复盘。

    如果你跟我一样,被孩子的屏幕时间逼到墙角; 如果你是个独立开发者,在想"我也想自己做点东西"; 如果你对"如何用好 AI 写代码,但又不让 AI 把项目搞坏" 感兴趣 ——

    那我们大概率会聊得来。


    七、最后

    如果你也是一个被孩子屏幕时间逼到墙角的家长,我想跟你说一件事:

    问题不一定出在孩子身上,也不一定出在屏幕身上。可能是出在"突然" 这两个字身上

    我们这一代家长比上一代难,因为我们小时候没有这种东西,我们没有现成的剧本可以照搬。但有一件事我越来越确信 —— 温柔的工具,比暴力的工具长效得多

    我做的不是"让孩子停下来" 的工具,是"让孩子学会自己停下来" 的工具。

    先解决你和孩子之间的吵架问题,再去解决"让孩子少玩" 的问题

    后者是工程,前者是育儿。

    工程错了能改代码。育儿错了,改不了关系。

    2 replies    2026-06-03 19:54:57 +08:00
    hhacker
        1
    hhacker  
       3h 38m ago   ❤️ 1
    我家两个孩子都没有这个问题, 因为从一开始他们接触电视, 我就把遥控器交到他们自己手里, 并且和他们约定时间, 开启和关闭电子设备都是他们自己做出的决定, 一集动画片 20 来分钟, 到时间了他们自己就关掉了, 关掉后会来向我报告.
    如果刚好卡到间隙时间到了, 动画片还剩一点时间, 我会允许他们看完, 但是我会提醒他们看完这一集就要自己关了.
    还有一点, 我不允许他们刷短视频, 不管是手机、电视还是平板上,都是禁止的。
    所以两个孩子都没有类似的关机焦虑。
    还有一点我觉得是仪式感,就是拿到遥控器开启电视,电视启动后请求家长输入密码,最后看完放回遥控器,他们能清晰地知道这个动作的边界在那里,有始有终。

    op 做的这个 app 对小孩子肯定是有用的,希望能有电视版。(其实这个功能在电视 app 的儿童模式里也有类似的体现)
    Fish1024
        2
    Fish1024  
       2h 36m ago
    iOS 到快时间了会提示,好像是一分钟。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3131 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 14:31 · PVG 22:31 · LAX 07:31 · JFK 10:31
    ♥ Do have faith in what you're doing.