Persistent Storage
There are various ways to store persistent data within your app.
Last updated
Was this helpful?
There are various ways to store persistent data within your app.
Your app can store a user's settings in various ways. For each usecase, there's a best practice.
Most likely, you'll want to store settings per-device.
For front-end, user-visible settings, use Device Settings.
For back-end, persistent settings, use the Device Store. Refer to Device.getStoreValue and Device.setStoreValue for the documentation.
Most app-specific settings can be stored and retrieved through ManagerSettings. This enabled your app to save and retrieve any value that is JSON-serializable. App Settings are saved across app restarts, and are only deleted when your app is uninstalled.
On Homey Pro, a custom App Settings can be created using HTML, CSS and JavaScript.
It is generally discouraged to use custom HTML, because often app settings are better to be stored within a Device Store.
For non-JSON serializable data, e.g. binary files, the /userdata/ folder is writable on Homey Pro.
The /userdata/ is publicly available on https://<homey>/app/your.app.id/userdata/.
This allows for some nice usecases, but can also be a security risk! Be sure to keep your filenames unique so they cannot be guessed.
For example, when storing an image, don't name it image1.jpg but a656d380-c887-4d8b-9ee5-f89de7b65d01.jpg and keep the Image's name stored in the App Settings.
Last updated
Was this helpful?
Was this helpful?