iOS 🍏☎️

General iOS dev notes.


Problem: we want to discover services on our local network

Solution: Implementing Bonjour across iOS and Android and Multipeer Connectivity provide good examples.

Install on device

Problem: the ability to deploy to multiple devices is helpful when developing networked apps

Solution: define a development certificate, as described by

Avoid storyboard complexity

Problem: storyboards hide programmatic complexity behind UI complexity, which is hard to search for

Solution: delete storyboards and plist references, and init view controller in AppDelegate, as described by

Related: consider generalizing view logic using something like Flutter

Detecting simulator

Problem: developing for two devices can require use of simulator and device simultaneously, so how do we differentiate?

Solution: #if targetEnvironment(simulator) as described by


Thoughts? Suggestions? Hit me up @erikeldridge


Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 International License, and code samples are licensed under the MIT license.