-2

I'm developing an iOS In-House application. I've known that an In-House app can be installed in any device without UDID limit. But I want to authorize particular device and app can run only on authorized device. In addition, the authorization operations should be dynamic, in other word, don't need to recompiling and redistribute the app. Is there any recommended solution?

ZkTsin
  • 21
  • 3
  • You need to implement your own auth solution with your own backend or use a MDM server solution. – Kerni Apr 05 '16 at 13:27

1 Answers1

0

Use UIDevice.currentDevice(). identifierForVendor to know on which device your application is running. Then make an HTTPS query to a web server to ask if that device is allowed to run your application. If no, crash the application.

Xvolks
  • 2,065
  • 1
  • 21
  • 32
  • But identifierForVendor would change after reinstall app or restore the device. – ZkTsin Apr 05 '16 at 09:32
  • See this thread for this issue : http://stackoverflow.com/questions/21878560/how-to-preserve-identifierforvendor-in-ios-after-uninstalling-ios-app-on-device%3E – Xvolks Apr 05 '16 at 09:36
  • This value is not guaranteed to be stable in non-app store environments. See https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIDevice_Class/index.html#//apple_ref/occ/instp/UIDevice/identifierForVendor – Kerni Apr 05 '16 at 13:26