BTT does not recognize iOS apps installed on M1

I have a couple of iOS apps installed on an M1 Mac (through Mac Catalyst) and was trying to do some automation, e.g. lock up the screen when the app launches. BTT does not recognize such apps. I am on the latest macOS and BTT.

By the way, among Mac App Store apps, Shortery has the same problem, but AppLocker seems to be able to recognize these iOS apps.

unfortunately I think these don’t integrate with the standard macOS notifications. However you should be able to recognize them via conditional activation groups (you can the. use the “conditional activation group sis activate / deactivate” triggers

I just tried CAG, but could not figure out how to do the following: If a specific app (SpecApp) is launched, put the computer to lock screen to require a password. Once re-logged in, since SpecApp has already been launched, I can continue to use this app. This is equivalent to password-protecting SpecApp.

When I use CAG to recognize App name, I would get into an endless loop because the standard BTT action of "when specific app is launched" is not available. Is there something obvious I am missing, or I have to resort to AppleScript?

That's true, this usecase probably can't be easily achieve with a CAG.

I did some tests but couldn't find a notification for these iOS app launches yet. I think this is a macOS bug.

I could think of some workarounds, e.g. saving the list of active apps on every focused window change, and triggering a "application did launch" if the new window's app was not in the list before. Or maybe checking the launch date of the focused window's app on every focus change. Or maybe I can just use key value observing on NSWorkspace's runningApplications property.

Maybe I'll have some time to test this next week.

It will be very nice if BTT can accommodate iOS apps. I just found that Cold Turkey Blocker can also block iOS apps, but unlocking will require a password specific to Cold Turkey. I would prefer to use the system lock-screen mechanism that just needs a fingerprint to unlock.