Skip to content

Plain HTTP on the local network

iTally uses only plain HTTP / WebSocket on the local network (no HTTPS), so clients must allow these connections.

In Info.plist, set NSAppTransportSecurity → NSAllowsLocalNetworking to YES. On iOS also add NSLocalNetworkUsageDescription; the system asks for Local Network access on the first connection.

<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsLocalNetworking</key>
<true/>
</dict>
<key>NSLocalNetworkUsageDescription</key>
<string>Connect to iTally on your local network to show tally</string>

From Android 9, cleartext traffic is blocked by default: add android:usesCleartextTraffic="true" to <application> in AndroidManifest.xml. In an Expo project, use expo-build-properties with android.usesCleartextTraffic: true.

A phone browser opens http:// addresses directly. Note: a page served over HTTPS cannot connect to a ws:// or http:// address on the local network, because browsers block it as mixed content.