ios_gamepad_disconnect
Release every input the virtual game controller is holding on an iOS device, so nothing stays pressed after you finish. Also drops any controller being streamed from a live viewer of this device — otherwise that one re-sends its frame a moment later and the release looks like it silently failed. Call this when finished.
By default the controller STAYS CONNECTED with nothing held: apps still see a gamepad, and the next call reuses it instead of waiting ~5 s for the device to adopt a new one. Pass unplug:true to remove it outright — the honest choice when handing the device back, since a phantom controller changes how games behave for whoever gets it next. The cost of unplugging is paid later, not now: re-registering waits out the adoption again, and the device keeps a permanent entry for every controller ever registered, which nothing can remove.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| udid | Yes | iOS device UDID | |
| unplug | No | Remove the controller from the device instead of just releasing its inputs (default false) |