sockets.tcp - redirect to file for Android and iOS

- set `destUri` to non-empty string will open outputStream
- set `destUrl` to empty string will close outputStream
- `close` and `disconnect` will close outputStream
- ~~`readyToRead` is not set to `false` after sending receive event~~ `readToRead` is ignored for redirect to file
- Fixed some style issues from other code reviews
It only happens for small requests. For large request with multiple responses, the receive events will be called every time when sockets `read` a packet.