Open Parent App From ShieldActionDelegate

Hello,

I’m building an app that helps people spend less time on social media apps.

For that, I make heavy use of Apple’s Screen Time APIs, such as ManagedSettings and FamilyControls.

When an app is locked using a ShieldConfiguration, the user has to open my app in order to unlock it (e.g. enter a code).

This is very cumbersome because no documented API exists to open the parent app (=my app) from the ShieldActionDelegate (also part of my app) when the user presses a button of the ShieldConfiguration.

The ShieldActionDelegate callback just offers three options in its ShieldActionResponse:

  • .none
  • .defer
  • .close

.openParentApp is missing.

We are working around this limitation by sending a local push notification that the user has to tap on.

This has multiple drawbacks:

  1. It has to be ensured that notification permission has been granted.
  2. It has to be ensured that notifications can be delivered even while focus is enabled.
  3. Features such as Apple Intelligence notification summaries and notification prioritization can heavily delay delivering notifications and thus frustrate the user.

Neither my users nor myself do understand why this is not possible in a smoother way, at least according to the documentation.

There are 3rd party apps that have such functionality, they can directly open their own app from a button press in the Shield, see here: https://apps.apple.com/us/app/applocker-passcode-lock-apps/id1132845904

It would be great if Apple could level the playfield for all developers and document how this is achievable, because technically it clearly is.

Thanks a lot and have a great day!

I submitted a ticket to Developer Support regarding this issue. Since several third-party apps already support this, I’m hopeful we’ll receive guidance on how to implement it.

Just dropping a link to a previous thread about this. As I said in that thread, I think it’s better to focus on this issue here.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

I think it’s better to focus on this issue here.

Thanks for your reply here, Quinn! One thing I forgot to add in my initial post is the feedback request / enhancement request under which this is tracked:

  • New with iOS 26 sysdiagnose: FB18846650
  • Original from last year, without any response so far: FB15079668

Got a response from technical support regarding my ticket. They confirmed that this functionality is not supported, and they were unable to clarify whether other apps (e.g. Jomo, Applocker) are using public methods or not. I think they are just referring to documentation though. Will keep digging.

Open Parent App From ShieldActionDelegate
 
 
Q