Best practices for an iOS app that needs to communicate with an embedded system?

Hello,

I would like to hear your recommendations for the architecure of an app that needs to communicate with specialised hardware. We are going to develop an embedded system that runs a web server. Users can access the web server with their browser or they can use our app on iOS.

Internet access is not a requirement, it is possible for all components to run on a network without a gateway.


Question 1: HTTP or HTTPS?

Our experience tells us of course to use HTTPS. However in a contained network without access to the internet, how would we sign the certificate? Should we use a self-signed certificate on the embedded system? Will we need to set ATS "Allow Arbitrary Loads" to "YES" for it to work? If yes, would the app even get accepted to the app store?


Question 2: Discovering the embedded system

Should we prompt the user to enter the URL of the server into the app or should we use some kind of automatic discovery? What kind of discovery methods are generally used in these environments?


Thank your for reading.

Replies

>app that needs to communicate with specialised hardware.


Via what means? Wi-Fi? BT? NFC? Cable? Headphone jack?