Create our own custom MDM

We are developing and distributing iOS apps under the enterprise development program. We have written a native device app that synchronizes data with our central server. From the server, I can request files from iOS devices within our app directory structure and synchronize them with the server. Our WINCE devices are able to pull app updates (executables) from the server to update apps on the devices. With the iOS devices, we have to use a 3rd party MDM solution to push out app updates. My question is, can I write my own custom MDM functionality that would allow us to push out application updates to our own devices without having to use a 3rd party MDM solution?

You can certainly reinvent the wheel 🙂


Writing an MDM solution is surprisingly complex once you factor in certificate handling, encryption, messaging protocols, and so forth. Regardless of technical prowess, you'll likely be hard pressed to justify the investment in time over paying for a third party solution. Just my 2c. Perhaps you have a unique situation that makes it worth considering...

If it is a cost issue (i.e. the cost of the 3rd party solution), Apple OS X Server has an MDM solution called Profile Manager you could try.

https://www.apple.com/support/osxserver/profilemanager/

OS X Server is cheap, but depending on the number of devices you have, the hardware required could get expensive. See Profile Manager 2: Scalability on the same page linked above. Also note that Profile Manager 3 is the current version, not sure how current the documentation is.

I am not looking at duplicating the entire functionality of an MDM initially, just the ability to push out application updates. It is not a cost issue (it costs much more to develop your own), it is creating unique value for my customer not really available anywhere else. I can already manage and sync or transfer files (within our app file structure) to and from remote devices through our custom synchronization platform based on buisiness rules. Current MDM's don't offer much as far as integration with your apps. I am looking for tight integration between our app and MDM functionality. Is there an API for this? How would I go about transfering application updates from a central server to remote devices if I code it myself? We already to this with WINCE devices, but of course, the iOS platform is a much different story. Thanks.

You can, but you will need to enroll in the Enterprise Developer program to get access to the required MDM Vendor CSR in order to run your own MDM service. The Enterprise account will also let you access the essential MDM protocol specification document. It is entirely up to you and your org to implement just the parts of the larger MDM specification you need as a kind of middleware that sits between your own services and clients.


HTH.

How did that go? " just the ability to push out application updates"

Create our own custom MDM
 
 
Q