Get IMEI on iPhone with user permission

We are using a global IMEI database which has stolen/fraudulent device IMEI numbers in it. We need to check against it when user runs our app and not do any operations from the app if it's running on a blacklisted IMEI device. Will it be possible to get the IMEI number in that case? Can we ask somehow to get access to this info? or is this a blanket rule for app to be rejected if it uses any private APIs?

Accepted Reply

If you’re building a standard App Store app then the only supported way to get the IMEI is to ask the user to enter it.

If you’re deploying to managed environments you have other options (specifically, MDM allows you to get the device’s IMEI, and you could integrate your app with the MDM server).

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"

Replies

I doubt it, unless you can provide a use case to app review that outweighs their current stance towards user privacy, while convincing them you have nothing but the best of intentions, of course.

If you’re building a standard App Store app then the only supported way to get the IMEI is to ask the user to enter it.

If you’re deploying to managed environments you have other options (specifically, MDM allows you to get the device’s IMEI, and you could integrate your app with the MDM server).

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"