# com.innovaphone.autostart

If the com.innovaphone.autostart API is declared by a hidden app, the myApps client auto-starts that app. This mechanism is intended for background services that should always run.

### Remarks

- The autostart mechanism only applies for apps with the hidden flag.
- Autostart apps are never closed. They should be able to handle and recover from errors without a restart. I.e. they should not call start.Close().
- Before using com.innovaphone.autostart, consider if your hidden app really needs to run unconditionally. In most use cases hidden apps can be started by API messages from another app.
- Autostart apps should be designed to be very careful with resources. Keep in mind that the app will be always running on all clients on all platforms. Hints:
  - Keep your app small, so it can be loaded quickly. Don't include files in your HTML that are not needed in a hidden app (like CSS and UI libraries).
  - Only have network connections open when you need them.
  - Avoid CPU intensive operations.
  - Use exponential back-offs for retries. Avoid retries if they won't succeed in the specific environment.

## API model

This API defines no model.

## API messages

This API defines no messages.