We have created provisioning profile from apple developer account for our iPadOS app, the expiry date shown in the profile is 20-Aug-2026. However, when when I build the app with this provisional profile the expiry date shown in the app is 6-May-2026. My Certification expires on 2027. I see a embeded.mobileprovision profile inside the app, and it has an expiry of 6-May-2026. I did a clean build, cleared unnecessary profiles from profile folder, created a new provisional profile and tried, but nothing seems help.
We have a few apps, and no other app has this issue, only those two apps have this issue. As the expiry date the shorten, we also need to special handle these two apps, Will you please help me to resolve this issue?
Thanks.
Explore the intersection of business and app development. Discuss topics like device management, education, and resources for aspiring app developers.
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
Hi, I'm glad to hear that the service discovery process is improved on iOS/iPadOS 18.2 mentioned here.
https://support.apple.com/en-ca/guide/deployment/dep4d9e9cd26/1/web/1.0
I tried it on my development MDM server.
Set default MDM for iPad to my development MDM server on Apple Business Manager.
Call the new API https://developer.apple.com/documentation/devicemanagement/account_driven_enrollment_profile and 200 OK is returned
However the service discovery fails with the following error.
Invalid well-known response for https://{my email's comain name}/.well-known/com.apple.remotemanagement?user-identifier={my email}&model-family=iPad: <NSHTTPURLResponse: 0x300a9f420>
Invalid well-known response for https://axm-servicediscovery.apple.com/mdmBaseURL?user-identifier={my email}&model-family=iPad: <NSHTTPURLResponse: 0x3009047a0>
It seems fallback process to https://axm-servicediscovery.apple.com/mdmBaseURL actually works but it returns 404 Not Found error.
How can we use this awesome feature?
Thank you :)
Topic:
Business & Education
SubTopic:
Device Management
Tags:
Apple Business Manager
Device Management
this issue is posted on Community multiple times. I am here out of desperation after opening a case on IT support. when a user fills out their application, uploads resume - all of that info is saved. however, when you click "submit," the button does not work.
I (along w/tons of other ppl) have tried all the usual remedies: clear cache, try different browsers, try different networks, try different devices - NOTHING WORKS.
this is maddening b/c it is affecting my life and career. this is an urgent need.
it is also disappointing that there is no tech support for the Careers site! this was confirmed by IT support today, they could not find anything and sent me here instead.
please help! I was an apple contractor last year and want to come back but can't even submit my application.
Topic:
Business & Education
SubTopic:
General
Hi Apple Development forums,
I am having trouble getting a Wireguard VPN config setup to automatically disconnect on all domain requests other than one specific domain.
I have my .mobileconfig designed as so:
<dict>
<key>Action</key>
<string>EvaluateConnection</string>
<key>ActionParameters</key>
<array>
<dict>
<key>Domains</key>
<array>
<string>service.domainname.com</string>
</array>
<key>DomainAction</key>
<string>ConnectIfNeeded</string>
<key>ProbeURL</key>
<string>https://service.domainname.com/</string>
</dict>
</array>
</dict>
<dict>
<key>Action</key>
<string>Disconnect</string>
<key>DNSDomainMatch</key>
<array>
<string>*.com</string>
<string>*.org</string>
<string>*.net</string>
</array>
</dict>
<dict>
<key>Action</key>
<string>Disconnect</string>
</dict>
</array>
The issue I'm having is regardless of whether I note a *.com or simply have the action Disconnect noted - the VPN stays connected after navigating to https://service.domainname.com.
would anyone have any thoughts on this? Or am I missing something here?
Hello,
We have implemented support for our app to work with MDM. Basically the app needs to read the custom configuration with UserDefaults.standard.dictionary(forKey: ‘com.apple.configuration.managed’) in order to be functional when in an MDM. The issue is that in the app review process we are told that:
"Guideline 2.1.0 - Information Needed
We are still unable to access the app's Mobile Device Management (MDM) functionality.
Provide a demo MDM profile and corresponding login credentials that we can be used to access the MDM features and functionality."
How do we create a demo MDM profile? Our app only needs to be passed configuration information and we have used Apple Configurator to create a profile, we have added information but it still doesn't work.
Here is an example of the .mobileconfig file we have generated, but when we install it on our device, the app does not return any value using UserDefaults.standard.dictionary(forKey: ‘com.apple.configuration.managed’).
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PayloadContent</key>
<array>
<dict>
<key>PayloadDisplayName</key>
<string>App Name</string>
<key>PayloadIdentifier</key>
<string>com.xxx.yyy.TESTUUID</string>
<key>PayloadType</key>
<string>com.apple.ManagedAppConfiguration</string>
<key>PayloadUUID</key>
<string>TESTUUID</string>
<key>PayloadVersion</key>
<integer>1</integer>
<key>ManagedAppConfiguration</key>
<dict>
<key>MyFirstKey</key>
<string>value1</string>
<key>MySecondKey</key>
<string>value2</string>
</dict>
</dict>
</array>
<key>PayloadDisplayName</key>
<string>Test Profile</string>
<key>PayloadIdentifier</key>
<string>payloadid.TESTUUID2</string>
<key>PayloadType</key>
<string>Configuration</string>
<key>PayloadUUID</key>
<string>TESTUUID2</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</plist>
On the other hand, about 3 weeks ago we requested the MDM capability for the app (https://developer.apple.com/contact/request/mdm-capability) but we have not received any response.
We are at a bit of a loss.
Topic:
Business & Education
SubTopic:
Device Management
Tags:
Enterprise
App Review
Apple Business Manager
Device Management
I've installed two different profiles and having no issues using them until iOS 17, 18.0 (certainly for 17, but not so sure for 18).
But after upgrading to 18.2 and even developer beta 18.3, installed profiles are not showing on the Setting / General / VPN &amp; Device Management.
So I can't even uninstall, also I can't reinstall unless I factory reset by iPhone, iPad and not using iCloud backups.
First profile is DNS profile downloaded from website(NextDNS) and the second profile is made by my own, configuration for the cellular APN setting.
(DNS setting is shown on the setting but there's no profile showing, I did not uninstalled or removed it)
(Installing the custom celluar configuration profile failed, since it's already installed but just not showing as above)
All happens on my iPad pro M1 12.9, ipad mini 2021, iphone 12 mini(18.3, else are 18.2), and iphone 16 pro max.
Want to know if it's bug, and any resolution excluding factory reset and start using from scratch(It's very useless solution). Thank you.
We install two in-house apps.
The first app is installed using the standard in-house method, while the second app is installed via MDM commands.
Both apps share the same Team ID and use Keychain sharing to exchange data.
However, when the MDM profile is deleted and the second app is removed, the first app intermittently encounters issues and does not function properly.
However, when the MDM mobileconfig is reinstalled and the second app is installed again, the first app that was not functioning starts working properly.
We have thoroughly reviewed the logs but have not been able to find a solution.
Your assistance would be greatly appreciated.
We have extracted and attached the device logs that were generated during the error occurrence.
log.log
Could you please provide guidance on what is required to set up an Apple MDM server from scratch? Specifically, I would like to understand the necessary steps, tools, certifications, and best practices involved in the process. Any resources or documentation you could recommend would also be appreciated.
We are pushing some Chrome settings through Directory Services command line utility /usr/bin/dscl
/usr/bin/dscl /Local/Default -mcximport /Computers/local_computer chrome_settings.plist
/usr/bin/mcxrefresh -n root
These commands created com.google.Chrome.plist in /Library/Managed Preferences on previous macOS versions.
However on macOS 15.x Sequoia these commands intermittently fail to create the file in /Library/Managed Preferences though there is no error reported or any log entries that could indicate an error.
There could be other component on Sequoia that is preventing directory services tool to push the preferences but I am unable to locate it. It is not MDM because the machines are not enrolled (also have a setup where dscl and MDM both work).
This is happening on a clean macbook setup but I have never seen it happen on mac mini.
Anyone have an idea what could be interfering with directory services to complete its task of pushing managed settings? DDM?
Hello everybody,
We are trying to configure Device APN settings by sending IOS device configuration profiles through OTA. Please refer below url for details which we are following :
https://developer.apple.com/library/archive/documentation/NetworkingInternet/Conceptual/iPhoneOTAConfiguration/Introduction/Introduction.html#//apple_ref/doc/uid/TP40009505
We’ve encountered an issue where the APN (Access Point Name) settings are not populating correctly on iOS devices, even though we are sending the configuration via our Device Management Center (DMC) and the configuration message is being pushed correctly over the air (OTA).
Path to the APN fields:
Settings > Mobile > Mobile Data Network > APN
Tested iOS version: 17.3, 17.5, 18.2, 18.3
Configuration message received:
Configuration message installed:
APN fields are empty:
Could you give us any suggestions ?
Thank you very much.
I'm working on the companion iOS app for my purpose-built MDM system. when I use the following in a .swift file:
import DeviceManagement
I get the build issue:
No such module 'DeviceManagement'
When I attempt to add the framework in the Frameworks, Libraries, and Embedded Content settings, DeviceManagement doesn't even show up in the available frameworks.
Alll the documentation I can find suggests that is the correct framework to import, but I'm new to this and not sure if I'm just missing something.
Some AI help is suggesting that the culprit might be v16.x of Xcode, but I don't know enough to prove that correct or not.
Any ideas on why Xcode believes there is no such module? Is there documentation that might help me learn how to make that framework available for my project?
short version question:
why some users after deleting and downloading back my in-house app, cannot start the new process for approving developer, but instead it tries to start and then crashes immediately?
long question version
I am maintaining an in-house distributed enterprise app.
due to update in iOS 18 update here users need to trust the developer via a new procedure that involves restarting device and inserting the phone code.
after thousands (more or less 30.000) of users with no issue at all, some of them has this problem, the old (expired)trust seems to be persistent and never updated.
Standard events
a user deletes the app via settings > general > VPN & device management or via classic persistent touch procedure
checks no other presence of the app is on the device via spotlight.
since it is the only app with "MyDeveloperName" on the phone, if users goe back to VPN & device management screen, no app or developer will be present.
user downloads new version of the app. If taps directly on the icon there is a system alert with says the developer must be trusted.
a this point in settings > general > VPN & device management you can find a line with developer name, tapping on it we find a screen where user finds a white button with BLUE message "authorize MyDeveloperName" and follows procedure.
My issue is that some users get following different behavior, and I do not understand why:
❌ tapping on downloaded app icon: no alert, but app tries to start then crashes.
❌ going in VPN & device management screen there is only RED write button "delete app"
in both paths, working and not working, the app results "verified" in VPN & device management screen (Apple says old authorizations are preserved.)
Hello All,
I am currently attempting to get application config working with enterprise apps but it seems as though the asset config is not applying at all. While the asset and application install correctly it does not seem that the config is read at all judging from the status message returned.
"StatusItems" : {
"app" : {
"managed" : {
"list" : [
{
"name" : "apps",
"config-state" : {
"app-config-state" : {
"state" : "unknown"
}
},
"identifier" : "app.identifier",
"version" : "3.2",
"short-version" : "3.2.0",
"state" : "managed",
"declaration-identifier" : "dec-identifier"
}
]
}
}
},
"Errors" : [
]
}
The asset file being sent down is as follows:
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Config 1</key>
<string>Value 1</string>
<key>Config 2</key>
<string>Value 2</string>
<key>Config 3</key>
<string>Value 3</string>
</dict>
</plist>
This is the config report being sent back by the device after everything has been fetched:
"StatusItems" : {
"management" : {
"declarations" : {
"activations" : [
{
"active" : true,
"identifier" : "group.activation.payload",
"valid" : "valid",
"server-token" : "56792E4AE25C3286640B45E6BD265AE97545B2B87F90A6355919FD8B2E3C3AB3"
}
],
"configurations" : [
{
"active" : true,
"identifier" : "app.install",
"valid" : "valid",
"server-token" : "34D7ACECAE16EE9EEAC0630FF2FF85524FFBB5BA3CB18CFB6296FBC860368C85"
},
{
"active" : true,
"identifier" : "ios.policy.subscription.list",
"valid" : "valid",
"server-token" : "376913E11BE7D26EC745B3B68C6FA94C4FC061B1B736D143EBE0F12FF73ADFF8"
}
],
"assets" : [
{
"active" : true,
"identifier" : "app.config.reference",
"valid" : "valid",
"server-token" : "1CFBE30EB56309005F742D667B80242E6A3CDC08ED228D0BC5F87749C6BBAB77"
}
],
"management" : [
]
}
},
"app" : {
"managed" : {
"list" : [
{
"state" : "downloading",
"declaration-identifier" : "app.install",
"identifier" : "app.identifier",
"name" : "apps",
"config-state" : {
"app-config-state" : {
"state" : "unknown"
}
}
}
]
}
}
},
"Errors" : [
]
}
Additional info would be useful, though a sysdiagnosis will be submitted to feedback as well.
Config did apply correctly when sending down through Install application command
Hello All,
I am currently developing a mobile management system using declarative management and for the most part it is pretty great. There is one consistent issue I have run into and it comes when testing VPP app installs with not enough licenses.
When my server detects that it can't provide a license ID it will return a 404, which causes the rest of the DM syncing to stop, and the activation to throw an error.
Per the documentation for using simple activation:
An array of strings that specify the identifiers of configurations to install. A failure to install one of the configurations doesn’t prevent other configurations from installing
The above would imply that if a config fails it should not affect anything else (aside from possibly reporting an error.
Am I returning the wrong error code for it to continue or is the behavior correct and the documentation is wrong?
Any additional info would be useful
Hello,
We're testing the new allowedExternalIntelligenceWorkspaceIDs key in the MDM Restrictions payload on supervised iPads.
According to Apple's documentation, this key expects an "external integration workspace ID", but it's not clear what this specifically refers to. We've tried the following IDs individually (one at a time, as documentation says only one is supported currently):
OpenAI Organization ID
ChatGPT user email
Apple ID used in ChatGPT
Google ID used in ChatGPT login
The profile installs correctly via MDM and the key is set, but we want to confirm:
What exactly is considered a valid "external integration workspace ID" for this key?
Is there a way to verify that the restriction is working as intended on the device (e.g. does it limit specific integrations or apps)?
Is there an official list of services that currently support this?
Any clarification from Apple or other developers with experience on this would be very helpful.
Thanks in advance.
Topic:
Business & Education
SubTopic:
Device Management
Tags:
Apple Business Manager
Device Management
Apple Intelligence
We want to set key-value pair (installation_token: xxxxx) into an app installed by MDM.
Formerly we could set the key-value using Settings MDM command like this.
<dict>
<key>Command</key>
<dict>
<key>RequestType</key>
<string>Settings</string>
<key>Settings</key>
<array>
<dict>
<key>Configuration</key>
<dict>
<key>installation_token</key>
<string>xxxxxxx</string>
</dict>
<key>Identifier</key>
<string>com.cloudflare.cloudflareoneagent</string>
<key>Item</key>
<string>ApplicationConfiguration</string>
</dict>
</array>
</dict>
We can still use this for the apps installed withInstallApplication MDM command, however we cannot apply this configuration into the app using Declarative Device Management. When we try it, we got an error like this.
<dict>
<key>CommandUUID</key>
<string>.............</string>
<key>Settings</key>
<array>
<dict>
<key>ErrorChain</key>
<array>
<dict>
<key>ErrorCode</key>
<integer>12008</integer>
<key>ErrorDomain</key>
<string>MDMErrorDomain</string>
<key>LocalizedDescription</key>
<string>Could not modify apps managed by Declarative Device Management.</string>
<key>USEnglishDescription</key>
<string>Could not modify apps managed by Declarative Device Management.</string>
</dict>
</array>
<key>Identifier</key>
<string>com.cloudflare.cloudflareoneagent</string>
<key>Item</key>
<string>ApplicationConfiguration</string>
<key>Status</key>
<string>Error</string>
</dict>
</array>
How can we work with managed application configuration with DDM?
Hello,
Although the Swift Student Challenge for 2025 has not yet been announced and is not officially taking place, I have a question regarding last year’s rules in the Swift Student Challenge. This is, of course, assuming the rules will be similar if the challenge runs again next year.
I am interested in utilizing CreateML to design a text classifier model. Given the substantial amount of data required for machine learning, am I allowed to outsource data from open-source libraries and/or social media platforms, provided that these resources abide by their terms of service? My primary concern is if I must create my own data as that will be time-consuming and more biased.
Thank you,
Jesse
I found that "search" endpoint is recently added to api.ent.apple.com : https://developer.apple.com/documentation/devicemanagement/get-catalog-search-results
However it seems we cannot find custom apps using this API even with sToken.
Is it not suppoted yet?
Thank you
I created a provisional profile from apple developer portal for my iOS app. The expiry date shown in the profile is 21-April 2026. However, when I build the app with this provisional profile the expiry date shown in the app is 11 Dec, 2025. My iOS distribution certificate expires only in November 2026. I see a embeded.mobileprovision profile inside the app, and it has an expiry of 11-Dec-2025. I did a clean build,, cleared unnecessary profiles from profile folder, created a new provisional profile and tried, but nothing seems help.
We have a few apps, and no other app has this issue. We do annual release of all apps together for provisional profile renewal. As this app expiry is different, it will cause lot of difficulty for us next year. Will you please help me to resolve this issue?
Thanks.
https://support.apple.com/en-gb/guide/deployment/dep6fa9dd532/web dangles a carrot about being able to facilitate "A list of domains that the Shared iPad sign-in screen displays. The user can pick a domain from the list to complete their Managed Apple ID." - this sounds ideal!
In the absence of this seemingly being supported by Apple Configurator or iMazing Profile Editor at the time of writing, I have tried to create my own but I fall foul of knowing what PayloadIdentifier or PayloadType to use?
This is the draft/work in progress/doomed to failure config so far (which doesn't - as expected - work):
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>HasRemovalPasscode</key>
<false/>
<key>PayloadContent</key>
<array>
<dict>
<key>PayloadDescription</key>
<string>Configures Managed Domains</string>
<key>PayloadDisplayName</key>
<string>Domains</string>
<key>PayloadIdentifier</key>
<string>com.apple.domains.DE12211A-CFDD-4F8C-8D7B-72E569CE3B6C</string>
<key>PayloadType</key>
<string>com.apple.domains</string>
<key>PayloadUUID</key>
<string>DE12211A-CFDD-4F8C-8D7B-72E569CE3B6C</string>
<key>PayloadVersion</key>
<integer>1</integer>
<key>WebDomains</key>
<array>
<string>domain.com</string>
</array>
</dict>
</array>
<key>PayloadDescription</key>
<string>For Shared iPad login convenience</string>
<key>PayloadDisplayName</key>
<string>DefaultDomain</string>
<key>PayloadIdentifier</key>
<string>Tom.77CF3CA5-4A48-41DD-9179-EF6F4C5E786E</string>
<key>PayloadRemovalDisallowed</key>
<true/>
<key>PayloadType</key>
<string>Configuration</string>
<key>PayloadUUID</key>
<string>A5594F17-155B-4A1C-8696-3F502D118C37</string>
<key>PayloadVersion</key>
<integer>1</integer>
</dict>
</plist>
The support article is probably ~2-year old information so I'd have thought that by now that this would be documented somewhere - am I just not looking hard enough?