Electron을 사용하면 JavaScript, HTML 및 CSS를 사용하여 크로스 플랫폼 데스크톱 애플리케이션을 작성할 수 있습니다.
Electron 27.0의 새로운 버전 출시가 발표되었으며 , 이번 릴리스에서는 몇 가지 변경 사항이 주요 내용입니다. 대부분은 일부 메서드, 속성 및 이벤트의 제거와 macOS 10.13 지원, 그리고 간접적으로 Windows 7/8/8.1 지원이 포함됩니다.
Electron에 익숙하지 않은 분들을 위해 설명드리자면, Electron은 브라우저 기술을 사용하여 모든 그래픽 애플리케이션을 만들 수 있게 해줍니다. 애플리케이션 의 로직은 JavaScript, HTML, CSS로 정의되며, 플러그인 시스템을 통해 기능을 확장할 수 있습니다.
개발자는 기본 대화 상자 만들기, 앱 통합, 상황에 맞는 메뉴 만들기, 알림 표시 시스템과 통합, 창 조작 및 Chromium 하위 시스템과 상호 작용을 위한 확장 API뿐만 아니라 Node.js 모듈에 액세스할 수 있습니다.
Electron 27.0의 주요 참신함
Electron 27.0의 새로운 버전에서 가장 중요한 기능 중 하나는 Wayland 관련 개선 사항입니다. WaylandWindowDecorations 모드가 기본적으로 활성화되어, Wayland 지원(--ozone-platform=wayland) 옵션을 사용하면 XDG 데코레이션 프로토콜을 지원하지 않는 GNOME 및 Weston 과 같은 Wayland 기반 환경에서도 창 크기 조정 및 이동이 올바르게 이루어집니다 . KDE 및 Sway와 같이 XDG 데코레이션을 지원하는 환경에서는 WaylandWindowDecorations 모드가 무시됩니다.
Electron 27.0의 또 다른 새로운 기능은 애플리케이션의 배경 투명도 수준을 제어하는 시스템 구성을 고려하는 새로운 API 와 페이지에 자체 JavaScript 및 CSS를 삽입할 수 있는 chrome.scripting API 지원입니다.
또한, BrowserWindow.showAllTabs API가 추가되었고 , BrowserWindow 객체에 tabbingIdentifier 속성이 추가되었습니다. chrome.tabs.query API는 부분적으로 구현되었습니다.
Linux에서는 "xdg 설정" 포털을 통해 다크 테마 구성을 정의할 수 있으며 , ipcRenderer.sendTo() API는 더 이상 사용되지 않으므로 두 렌더러 간의 통신에는 MessageChannel로 대체해야 합니다.
반면 SystemPreferences에서는 색 구성표 변경 이벤트가 제거되었습니다(반전 색 구성표 변경 및 고대비 색 구성표 변경 대신 NativeTheme 모듈의 업데이트 이벤트를 사용해야 함).
또한, 이번 Electron 27 버전에서는 macOS 10.13 (High Sierra) 및 macOS 10.14 (Mojave)와의 호환성이 중단되었으며, 지원 정책에 따라 Electron 24.x 버전에 대한 지원이 종료되었습니다. 더불어, Windows 7/8/8.1과 호환되는 마지막 버전이었던 Electron 22.x에 대한 연장 지원 주기 또한 완료되었습니다.
이번 새 버전의 주요 변경 사항은 다음과 같습니다.
- 크롬 118.0.5993.32, DevTools 118
- Node.js 18.17.1
- V8 11.8
- session.downloadURL() 및 webContents.downloadURL() 메서드에 특정 HTTP 헤더를 보내는 기능이 추가되었습니다.
- safeStorage.setUsePlainTextEncryption 및 safeStorage.getSelectedStorageBackend 메소드를 추가했습니다.
- "-dns-result-order" 플래그가 추가되었습니다.
- webContents.getPrintersAsync를 위해 webContents.getPrinters 메소드가 제거되었습니다.
- systemPreferences.{get,set}AppLevelAppearance 및 systemPreferences.appLevelAppearance 메서드가 제거되고 NativeTheme 모듈로 대체되었습니다.
- systemPreferences.getColor 메소드는 선택한 컨텐츠 배경을 위해 대체 선택된 제어 텍스트 값을 더 이상 사용하지 않습니다.
- Node.js CLI 플래그 –dns-result-order에 대한 지원이 추가되었습니다.
- 다른 글꼴과 함께 기본 수학 글꼴을 사용자 정의하기 위한 지원이 추가되었습니다.
- 메뉴를 키보드 시작으로 표시하기 위한 지원이 추가되었습니다.
- 기본 프로세스에 몇 가지 Node.js cli 플래그에 대한 지원이 추가되었습니다.
- Host_permissions, 작성자 및 short_name을 포함하여 여러 확장 매니페스트 키에 대한 지원이 추가되었습니다.
- session.downloadURL()을 사용하여 HTTP 헤더를 보내는 기능이 추가되었습니다.
- webContents.downloadURL()을 사용하여 HTTP 헤더를 보내는 기능이 추가되었습니다.
마지막으로, 이 새로운 버전 에 대해 더 자세히 알고 싶으시다면 다음 링크에서 자세한 내용을 확인하실 수 있습니다 .
Linux에서 Electron을 얻는 방법?
Linux 환경에서 Electron을 실행하거나 작업하려면 시스템에 Node.js 와 NPM 패키지 관리자가 설치되어 있어야 합니다 .
최신 버전을 설치하려면 다음 명령을 입력하십시오.
npm install electron@latest