Mangels Hauptspeicher können Anwendungen auf einer Bangle.js nur einen begrenzten Funktionsumfang bieten.
Einen Ausweg aus diesem Dilemma bietet die Möglichkeit, von einem laufenden Programm aus eine andere Anwendung zu starten (wodurch das laufende Programm jedoch beendet wird).
Denselben Trick verwendet auch der "AppLauncher" einer Bangle.js:
Bangle.removeAllListeners(); clearInterval();
NRF.removeAllListeners(); clearTimeout();
Bluetooth.removeAllListeners(); clearWatch();
E.removeAllListeners();
setTimeout(process.memory,10); // run Garbage Collection
setTimeout(
'eval(require("Storage").read("-NameOfNextApp"));',
20
);
Damit dieser "Trick" auch mehrmals hintereinander funktionieren kann, ohne jedesmal ein wenig Speichermüll zu hinterlassen, sollten Anwendungen jedoch möglichst keine nicht-lokalen Variablen anlegen.
Eine mögliche Lösung wäre das Anlegen einer Anwendung als JavaScript IIFE:
;(function (undefined) {
add your application here
})();