I have a macOS application say Main.app which uses Helper App say Helper.app with UI support. Helper.app is placed inside Main.app/Contents/Library/LoginItems/Helper.app.
Helper.app is launched using NSWorkSpace and when user opts to launch Helper.app on login, SMLoginItemSetEnabled is turned ON for Helper.app.
Main.app and Helper.app communicate with each other via NSConnection.
Helper app supports set of features based on some Condition and same condition is used to validate a feature in Main.app. Hence, Main.app talks to Helper.app to check if a feature can be validated.
1) Can someone write their version of Helper.app with same bundle identifier as my Helper.app and expose a connection with same name (when my Main.app and Helper.app is not running).
2) Now when Main.app is launched, it get connected to 3rd party Helper.app.
There are two versions of Main.app
> Main.app and Helper.app both are sandboxed and Belong to same group.
> Main.app and Helper.app both are not sandboxed (But, hardened run time is enabled). Groups are not defined.
Regards,
Deepa