JavaScript

Hermes: Ersatz für JavaScriptCore für Android-Apps

Hermes: Facebooks neue JavaScript-Engine für Android auch mit API-Level <19 nutzbar
Keine Kommentare

Facebook hat erst vor wenigen Wochen Hermes vorgestellt, die neue JavaScript-Engine für Android-Apps, die nun optional in React Native verfügbar ist. Damit soll langfristig eine Alternative zum bisher verwendeten JavaScriptCore geschaffen werden. Die Engine wird noch immer aktiv weiter entwickelt.

React Native hat in Android-Apps bislang JavaScriptCore verwendet, die JavaScript-Engine aus dem Browser Safari. Nun steht seit Mitte Juli eine Alternative dazu zur Verfügung, die optional aktiviert werden kann. Hermes ist der Name der neuen JavaScript-Engine für Android, die seit React Native 0.60.2 in das Framework integriert ist. Hermes selbst liegt derzeit in Version 0.1.1 vor und wurde erst im Juli Open Source gestellt.

Hermes für React Native: JavaScript schneller ausführen

Hermes soll die Ausführung von JavaScript-Code auf Android-Geräten beschleunigen. Dazu seien verschiedene Maßnahmen ergriffen worden, die Hermes von anderen JavaScript-Engines unterscheiden, wie Marc Horowitz in der offiziellen Präsentation von Hermes im Facebook-Code-Blog erläutert. So verwende man für Hermes einen Ahead of Time Compiler, der im Rahmen des Build-Prozess von Anwendungen ausgeführt werde. Damit können der gesamte Programmcode sowie der Bytecode besser optimiert werden. Außerdem habe man auf einen Just in Time Compiler verzichtet. Hermes-Code kann mit den Chrome DevTools remote debugged werden.

Hermes wird derzeit aktiv weiter entwickelt. So wurden im neusten Release von React Native, Version 0.60.4, zwei Fehler an der Hermes-Implementierung behoben. Probleme bereitet hatten die Source Maps, allerdings nur, wenn Hermes nicht aktiviert war, sowie die Verwendung von Source Maps außerhalb von Assets. Auch für Hermes selbst wurde bereits wenige Tage nach dem initialen Release ein Update, v0.1.1, veröffentlicht. Damit ist die neue Engine nun auch mit Android-Geräten auf API-Level <19 kompatibel und es wurden die fehlenden ICU dlls für Windows hinzugefügt. Behoben wurden außerdem Probleme mit dem Bytecode File Locking in der Kompilierung unter Windows, sowie Abstürze unter macOS und Linux, die im Kontext der Bytecode-Kompilierung im Rahmen bestimmter Fehlermeldungen auftraten.

Facebook hat einen offiziellen Guide zur Verwendung von Hermes herausgegeben, der in der Dokumentation von React Native gefunden werden kann. Wenn die Engine mit bestehenden Apps genutzt werden soll, rät Facebook dazu, zuerst zu prüfen, ob daraus keine Probleme entstehen.

Unsere Redaktion empfiehlt:

Relevante Beiträge

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu:
X
- Gib Deinen Standort ein -
- or -