V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
imhuhe
V2EX  ›  macOS

Launchpad 图标排序问题

  •  
  •   imhuhe · 2020-09-22 11:59:23 +08:00 · 2829 次点击
    这是一个创建于 1522 天前的主题,其中的信息可能已经有所发展或是发生改变。
    每次重启 Mac 之后 Launchpad 里第一页“其他”文件夹的 App 图标就会自己跑出来,这是什么原因? iMac 和 MacBook Air 都是这样,系统版本 10.15.6 。
    11 条回复    2020-09-23 11:44:01 +08:00
    lrvy
        1
    lrvy  
       2020-09-22 12:29:59 +08:00
    可以重置下 Launchpad 图标排序

    ```
    defaults write com.apple.dock ResetLaunchPad -bool true && killall Dock
    ```
    imhuhe
        2
    imhuhe  
    OP
       2020-09-22 13:56:42 +08:00
    我自己做了个重置图标的自动化,但还是想一劳永逸地解决问题。
    vokins
        3
    vokins  
       2020-09-22 15:30:03 +08:00
    想请问有一个问题,默认的话,第一个页面的 app 都是完整的正常的,但是一旦重置以后,第一页全部系统 app 和以后页面的部分 app 都有了快捷方式的小图标是怎么回事?必须要下载系统重新安装一边才能解决,有大佬知道这个问题吗?谢谢
    gateoflunar
        4
    gateoflunar  
       2020-09-22 15:59:24 +08:00 via iPhone
    @lrvy 这个命令自从 High Sierra 开始排序就是乱序的……大概是不准备修了
    SimonOne
        5
    SimonOne  
       2020-09-22 17:27:50 +08:00
    @gateoflunar #4 确实,从数据库里也看不出排序的规律,挺迷的。只能知道苹果自己的放第 1 屏,排序规律看不出来。
    volvo007
        6
    volvo007  
       2020-09-22 18:06:28 +08:00
    我按字母排了放到文件夹里了,最近又炸了(从最一开始,这玩意就没稳定过)…… 如果可以的话我真想把这烂玩意删掉……
    di11wei
        7
    di11wei  
       2020-09-22 18:31:21 +08:00
    我已经放弃排序了,就是默认状态,反正也很少在这里面启动程序。
    typeday
        8
    typeday  
       2020-09-22 22:23:57 +08:00
    我以前的 10 年历史老 iMac 跑 10.13 真是很稳定也没啥 bug 连四国都没看过。
    妈呀换了 MacBook Pro+10.15 才几个月一堆 bug 包括这个,panic 也好几次。
    PostMeridiem18
        9
    PostMeridiem18  
       2020-09-23 08:58:09 +08:00
    launchpad 某一页最后一个文件夹 app 塞不进去的 bug 已经过了四五年了吧,苹果大概是把这个看作一个 feature 了。
    现在要启动什么都直接 spotlight+回车,launchpad 已经基本上完全不打开了
    RemiliaScarlett
        10
    RemiliaScarlett  
       2020-09-23 10:40:56 +08:00
    这也是老大难问题了啊...草死
    ldw4033
        11
    ldw4033  
       2020-09-23 11:44:01 +08:00
    是这个样子的,launchpad 图标位置信息等存储在一个数据库中,可能出于未知原因,这个数据库不是总是会被初始化,或是 launchpad 程序无法访问它,或者无法更新,再就是该数据库损坏等等,launchpad 程序与数据库无法互通。



    首先,确保自己没有安装使用系统优化等的软件,

    其次,通过监视这个数据库的变化,来分析问题的所在,具体解说如下:



    这个数据库默认地保存在每个用户自己的程序临时文件夹中,这个文件夹的地址有些特殊,可以通过下面的方法看到:

    echo $TMPDIR
    

    它看上去是这个样子的:/var/folders/m9/1mc3g1w06v51jy17v0_yt9t40000gn/T/

    其实,每个本地帐户都会在 /var/folders/目录下,都有一个自己的子目录,用于应用程序保存自己的运行时数据,比如上面的 m9,还不清楚它下面的子目录“1mc3g1w06v51jy17v0_yt9t40000gn”的含义,但这不妨碍咱们后边的分析。再下面一般有三个子目录,0, T, C 。而我们关心的是 0,在里面有一个目录叫 com.apple.dock.launchpad,launchpad 的数据库就保存在它里面的 db 子目录内。所以全路径就是:/var/folders/m9/1mc3g1w06v51jy17v0_yt9t40000gn/0/com.apple.dock.launchpad/db

    这个路径也可以使用下面的目录可以获得:

    echo "$(dirname $TMPDIR)/0/com.apple.dock.launchpad/db"


    具体如何监测,可以简单监视数据库的修改时间,比如使用下面的命令:

    $ ls -l "$(dirname $TMPDIR)/0/com.apple.dock.launchpad/db"


    下面是一个例子:

    total 8392
    -rw-r--r-- 1 me staff 1310720 Aug 3 17:00 db
    -rw-r--r-- 1 me staff 32768 Aug 22 20:58 db-shm
    -rw-r--r-- 1 me staff 1891112 Aug 24 21:43 db-wal


    每次改变 launchpad 中应用的图标位置,文件的时间就会变化。

    那么通过这个行为可以观察,它们的时间是否随改动而改变,重启后,是不是也改变了。



    如果任何地方出现问题或者可疑,有可能是不同的原因造成。比如,目录错误,有可能是 launchpad 的这个默认路径被未知原因改了;如果无法访问该目录,那么有可能是权限错误;如果每次重启都会改变,有可能是启动时有程序把它改变了;如果是文件时间不变,那么可能它们的联系中断了或者是数据库出错等,等等各种原因。上面只是举例说明,具体原因还要进一步分析。



    也可以尝试把这个 com.apple.dock.launchpad 目录转移走 /或者直接删除,重启后,让系统重建一个新的,然后自定义。



    对于你的问题的根结,不太好说。既然是刚刚入手的 Mac,有其它程序“从中捣乱”的可能性比较大,其次是数据库损坏。

    https://discussionschinese.apple.com/thread/250581574
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1093 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 23:24 · PVG 07:24 · LAX 15:24 · JFK 18:24
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.