Ostatnio zapowiedziano wydanie nowej wersji Electron 12.0.0, który pochodzi z integracją aktualizacji Chromium 89, silnik V8 8.9 i Node.js 14.16, a także kilka ważnych zmian, w tym wprowadzenie nowe interfejsy API i nie tylko.
Dla nieświadomych Elektron powinni wiedzieć, że to to wieloplatformowa struktura aplikacji komputerowych wykorzystująca technologie internetowe, którego logika jest określona przez JavaScript, HTML i CSS a funkcjonalność można rozszerzyć poprzez system wtyczek. Jest rozwijany przez GitHub i jest oparty na programowaniu w C ++.
Podstawowymi komponentami Electrona są Chromium, Node.js i V8. Infrastruktura jest zakodowana w Node.js, a interfejs oparty jest na narzędziach Chromium, otwartej części Google Chrome. LDla programistów dostępne są moduły Node.js, a także zaawansowane API do tworzenia natywnych okien dialogowych, integracji aplikacji, tworzenia menu kontekstowych, integracji z systemem wyjścia powiadomień, manipulowania oknami i interakcji z podsystemami Chromium.
W przeciwieństwie do aplikacji internetowych, Programy oparte na elektronach są dostępne w postaci samodzielnych plików wykonywalnych które nie są połączone z przeglądarką.
W takim przypadku programista nie musi martwić się o portowanie aplikacji na różne platformy, Electron zapewni możliwość budowania dla wszystkich systemów kompatybilnych z Chromium. Electron zapewnia również narzędzia do organizowania automatycznego dostarczania i instalacji aktualizacji (aktualizacje mogą być dostarczane z oddzielnego serwera lub bezpośrednio z GitHub).
Co nowego w Electron 12.0.0?
Ta nowa wersja Electron zawiera kilka całkiem ważnych zmian i ulepszeń, z których wyróżnia się na przykład iImplementacja powiadomienia XML Toast niestandardowe w systemie Windows, a także ulepszona obsługa trybu ciemnego w systemie Windows a przede wszystkim przejście do nowej gałęzi LTS z platformy Node.js 14 (poprzednio używana była gałąź 12.x).
W przypadku nowych interfejsów API wspomina się, że dodano interfejs API webFrameMain, umożliwia to dostęp z głównego procesu do informacji o RenderFrame wykonywanych w oddzielnych instancjach WebContents (interfejs API webFrameMain jest odpowiednikiem interfejsu API webFrame, ale może być używany z procesu głównego).
Kolejna zmiana Wyróżnia się brakiem użycia „zdalnego” modułu, który został zastąpiony przez @ electron / remote i należy również zauważyć, że obsługa Flash została usunięta, ponieważ Chromium nie obsługuje Flasha.
z inne zmiany, które się wyróżniają w ogłoszeniu nowej wersji:
- Dodano API do włączania / wyłączania sprawdzania pisowni.
- ExitCode został dodany dla szczegółów procesu renderowania.
- dodano net.online, aby wykryć, czy aktualnie jest połączenie z Internetem.
- dodano powerMonitor.onBatteryPower.
- dodano webPreferences.preferredSizeMode, aby umożliwić dopasowywanie widoków do minimalnego rozmiaru dokumentu.
- dodano nową opcję poświadczeń dla net.request ().
- dodanie nowego asynchronicznego interfejsu API shell.trashItem (), zastępującego synchroniczną shell.moveItemToTrash ().
- Dodano API zrzutów ekranu dla session.setPermissionRequestHandler.
- Dodano brakujący element webFrameMain.executeJavaScriptInIsolatedWorld ().
- Obsługa odczytu / zapisu dla aktywatora tostów CLSID w skrótach.
- Dodano obsługę jawnego określania trybów direct, auto_detect lub systemowych w session.setProxy ().
- Dodano obsługę wyświetlania współdzielonego menu macOS, a także pliku Zdarzenie szybkiego przełączania użytkownika na powerMonitor w systemie macOS.
- Metoda „ContextBridge exposeInMainWorld” może ujawniać interfejsy API, które nie są obiektami.
W końcu jeśli chcesz dowiedzieć się więcej na ten temat tej nowej wersji możesz sprawdzić szczegóły W poniższym linku.
Jak zdobyć Electron na Linuksie?
Aby uruchamiać aplikacje i / lub pracować z Electron w systemie Linux, Musimy tylko mieć zainstalowany Node.JS w systemie i jego menedżer pakietów NPM.
Aby zainstalować Node.JS w systemie Linux, możesz odwiedzić post, w którym mówimy o Node.JS 15 a na końcu znajdziesz polecenia instalacji dla niektórych różnych dystrybucji Linuksa.