# Android
## How to keep a Socket.IO client running in the background?
Long story short, you probably shouldn't. The Socket.IO client is not meant to be used in a [background service](https://developer.android.com/guide/components/services?hl=en), as it will keep an open TCP connection to the server and quickly drain the battery of your users.
It is totally usable in the foreground though.
See also: https://developer.android.com/training/connectivity
## How to reach an HTTP server?
Starting with Android 9 (API level 28) you need to explicitly allow cleartext traffic to be able to reach an HTTP server (e.g. a local server at `http://192.168.0.10`):
- either for all domains:
`app/src/main/AndroidManifest.xml`
```xml
...
```
- or for a restricted list of domains:
`app/src/main/AndroidManifest.xml`
```xml
...
```
`app/src/main/res/xml/network_security_config.xml`
```xml
localhost
192.168.0.10
```
Reference: https://developer.android.com/training/articles/security-config