You now have a new, secure way to store secrets using the new Configuration & Secrets tab on the Bixby Developer Center.
Additionally, you can use this new feature to store configuration properties that need to be updated in real time.
Secrets consist of sensitive information that should not be stored in code and might need to be updated frequently (such as API keys and authentication details). You can register these in the secrets section of the Developer Center and they will be securely encrypted end-to-end. Secrets even appear obfuscated in the UI (example: *********dg3
) and can be updated at any time. In your capsule code, you can access secrets with the new secret.get()
JavaScript method.
For non-sensitive information, you should continue to define capsule properties in the /resources/base/capsule.properties
file, which makes them accessible via the config.get()
JavaScript method. Within Configuration & Secrets, you can now dynamically override the values for these properties without changing your capsule code. Examples of such dynamic configurations include endpoint URIs, permission scopes, feature gates, or any other non-sensitive configuration data that you'd like to be able to change without editing capsule code. Simply define capsule properties with the same names in the Developer Center and set new values that will flow through to the config.get()
JavaScript method.
Note that we're deprecating support for the redundant resources/<target>/capsule.properties
files. Instead, you should consolidate your properties into a single resources/base/capsule.properties
file. You can still apply different configurations per target device or locale using $vivContext.device
and $vivContext.locale
in JavaScript. For an example of how to migrate to using a single capsule.properties
file using $vivContext.locale,
refer to a corresponding update to the Space Resorts sample capsule.
Read more about using the Configuration & Secrets tab.
Learn more about the deprecation stages.