app
アプリケーションのイベントライフサイクルを制御します。
プロセス: Main
以下の例では最後のウインドウが閉じられたときにアプリケーションを終了する方法を示します。
const { app } = require('electron')
app.on('window-all-closed', () => {
app.quit()
})
イベント
app
オブジェクトでは以下のイベントが発生します。
イベント: 'will-finish-launching'
アプリケーションが基本的な起動処理を完了したときに発生します。 Windows と Linux上では、will-finish-launching
イベントは ready
イベントと同じです。macOS上では、このイベントはNSApplication
の applicationWillFinishLaunching
通知を表しています。
ほとんど の場合、ready
イベントハンドラーですべてのことを行うようにするべきです。
イベント: 'ready'
戻り値:
event
EventlaunchInfo
Record<string, any> | NotificationResponse macOS
Electron が一度、初期化処理を完了したときに発生します。 macOS でアプリケーションが通知センターから起動された場合、launchInfo
はアプリケーションを開くために使用された NSUserNotification
の userInfo
や UNNotificationResponse
の情報を保持しています。 また、app.isReady()
を呼び出してこのイベントが発生したことがあるかどうかを確認したり、app.whenReady()
を呼び出して Electron 初期化時に解決される Promise を取得したりできます。
注意: ready
イベントは、メインプロセスがイベントループの最初のティックを完遂した後にのみ発生します。 ready
イベントの前に Electron API を呼び出す必要がある場合は、メインプロセスのトップレベルのコンテキストで同期呼び出しをしてください。
イベント: 'window-all-closed'
すべてのウィンドウが閉じられたときに発生します。
このイベントを購読せずに全てのウインドウを閉じた場合、既定の動作としてアプリは終了します。しかし、このイベントを購読している場合は、アプリを終了するかどうかを制御することができます。 ユーザが Cmd + Q
を押下したり、開発者が app.quit()
を呼び出したりした場合では、Electron はまず全てのウインドウを閉じようとして、その後に will-quit
イベントを発生させます。しかし、この場合は window-all-closed
イベントは発生しません。
イベント: 'before-quit'
戻り値:
event
Event
アプリケーションがウィンドウを閉じ始める前に発生します。 event.preventDefault()
を呼び出すことで、アプリケーションが終了する既定の動作を阻害できます。
注: アプリケーションの終了が autoUpdater.quitAndInstall()
によって開始された場合、全てのウインドウで close
イベントを発生させ、それらが閉じた_後_ に before-quit
が発生します。
注釈: Windows では、この イベントはシステムのシャットダウン/再起動やユーザーのログアウトでアプリケーションが閉じられようとしている場合には発生しません。
イベント: 'will-quit'
戻り値:
event
Event
すべてのウィンドウが閉じられ、アプリが終了しようとしているときに発生します。 event.preventDefault()
を呼び出すことで、アプリケーションが終了する既定の動作を阻害できます。
will-quit
と window-all-closed
イベントの差異を確認するためには、window-all-closed
イベントの説明もお読みください。
注釈: Windows では、このイベントはシステムのシャットダウン/再起動やユーザーのログアウトでアプリケーションが閉じられようとしている場合には発生しません。
イベント: 'quit'
戻り値:
event
EventexitCode
Integer
アプリケーションが終了するときに発生します。
注釈: Windows では、このイベントはシステムのシャットダウン/再起動やユーザーのログアウトでアプリケーションが閉じられようとしている場合には発生しません。