【Electron】MacのDockアイコンを起動時から非表示にする

困ったこと

MacのDockアイコンを、アプリ起動時から非表示にしたい。

app.dock.hide();

しかしDockクラスのhideを呼び出す方法だと、アプリ起動時にアイコンを表示しその後に動的に非表示にしているため一瞬チラついてしまう。

解決法

"build": {
"mac": {
"extendInfo": {
"LSUIElement": true
}
}
}

package.jsonにて上記のように"LSUIElement": trueを指定すればOK。

これでelectron-builderがファイルの関連付けのためのinfo.plistに設定を追記してくれる。

12

参考
  1. LSUIElement | Apple Developer Documentation

  2. How to avoid showing a Dock icon while my Electron app is launching on macOS? - Stack Overflow