• MacBook Pro的touchbar疯狂闪烁 通过写程序不断点亮touchbar,从而避免其闪烁


    参考链接

    问题定位

    • 问题总结如下:
      • touchbar 闪烁出现在其未被激活使用的时候
      • touchbar 闪烁是随机发生的
      • touchbar 闪烁也出现在安全模式
      • 重置 SMC 或 NVRAM 无济于事
      • 重新安装 MacOS 没有帮助
    • 这是一个硬件问题,如果 MacBook 不在保修范围内,维修代价高昂,并不值得
    • 核心思想
      • 因为触控栏在活动时不会闪烁,所以不断激活触控栏使其处于活动状态是修复touchbar闪烁的关键,此修复程序只做一件事:它使 TouchBar 保持活动状态,因此它不会关闭。准确地说,每当touchbar即将关闭时此程序都会重新启动 TouchBar。
         

    脚本

    • 脚本程序已在 MacBook Pro 15 英寸 2019 和 MacOS Monterey 12.1 上进行了测试,并没有任何问题 

    设置键盘

    • 在继续之前,请确保您的键盘设置和我保持一致。
    • 重要的是关闭键盘背光,将其设置为至少 1 分钟。

     软件

    • 从苹果商店下载软件,软件的名字如下,JSON Helper

    • 打开上述软件,并黏贴代码
    • 注意事项:切记要替换下面代码中的字段YourUserNameGoesThereYourPasswordGoesThere,且每个字段均替换了两次
    1. global computerIsInUse, resetTime
    2. on run
    3. set computerIsInUse to true
    4. set resetTime to (do shell script "date +%s") as integer
    5. end run
    6. on idle
    7. set idleTime to (do shell script "ioreg -c IOHIDSystem | awk '/HIDIdleTime/ {print $NF; exit}'") as integer
    8. if idleTime is greater than 7.4E+10 then
    9. if computerIsInUse then
    10. do shell script "pkill TouchBarServer" user name "YourUserNameGoesThere" password "YourPasswordGoesThere" with administrator privileges
    11. set computerIsInUse to false
    12. end if
    13. end if
    14. if idleTime is less than 7.4E+10 then
    15. set computerIsInUse to true
    16. end if
    17. set now to (do shell script "date +%s") as integer
    18. if (not computerIsInUse) and ((now - resetTime) is greater than 59) then
    19. do shell script "pkill TouchBarServer" user name "YourUserNameGoesThere" password "YourPasswordGoesThere" with administrator privileges
    20. set resetTime to (do shell script "date +%s") as integer
    21. end if
    22. return 1
    23. end idle

    脚本的作用:

    1. 在第 9 行,程序检查您未使用计算机的时间:idleTime
    2. 因为 TouchBar 大约在 75 秒后完全关闭,所以它会检查idleTime是在 74 秒之前还是之后:7.4E+10。
    3. 如果idleTime经过这 75 秒,它会重新启动 TouchBar 并设置computerIsInUse为 false,因为您显然没有使用计算机(不是按键或鼠标等)。
    4. 如果computerIsInUse为假(仅在 75 秒后发生),它将立即重新启动 TouchBar,然后每 60 秒(超过 59 秒)重新启动。为什么?因为如果没有,你的 Touchbar 会在 60 秒后消失。该脚本必须每 60 秒重新启动一次。

    注释:当 TouchBar 在前 60 秒后稍微变暗并保持稍微变暗约 15 秒(第一次重启发生在 7.4E+10 之后的原因)时,您可以在这 15 秒内体验到闪烁应用。这些是更新 Touchbar 中数据的应用程序,例如 IINA。如果您遇到这种情况,只需将 7.4E+10 更改为 5.9E+10。

    创建应用

    • 现在可以将脚本导出为应用程序。
    • 选择File -> Export并创建最终应用程序:
    • 请参见下面的屏幕截图。
    • 找到桌面的程序,右键打开即可发挥应用的作用

    • 使用活动监视器可以看到新建的程序

     注意事项

    • 设置程序后台启动,不显示应用图标,参考上述参考链接

     

     

  • 相关阅读:
    微信小程序开发源码系统集合版:含15大类别小程序功能 包升级更新
    NGINX源码之:子请求与请求后置处理ngx_http_finalize_request
    JVM内存结构
    x-pack的破解方式和免费jar包!!可直接用!!
    Android 13.0 遥控器点击输入框 弹不出输入法
    uniapp 给自定义组件或uview等ui组件加class样式或修改样式在微信小程序不生效的情况
    Shell脚本学习指南(四)——管道的神奇魔力
    【每日进步一点点】C语言刷题技巧及训练4
    Elasticsearch高级检索之使用单个字母数字进行分词N-gram tokenizer(不区分大小写)【实战篇】
    【SVN】
  • 原文地址:https://blog.csdn.net/CHYabc123456hh/article/details/126922379