Mac Catalyst App No longer start : Cause bugs in App Store and weird macOS behaviour

My latest app version may have a bug that happens very rarely when opening/closing the app and AVAudioPlayer.init(contentsOf:fileTypeHint:) is called (note that everything related to audio player is protected inside try/catch blocks). But the app does start again. I tested on my Intel Mac and Mac mini 2024 without any problems.

In fact we have more than 2000 Mac users that use our app daily without any problems.

But we have 3 customers that have a serious problems. They have apple silicon Macs with macOS 15.7.7 and 26.5. So the app does not ever start again, after working for years. Uninstalling and deleting all hidden files over the entire hard drive related to our app and reinstalling it from the store. Does not make it start again.

I saw many macOS bugs happening. Killing/Closing the app then rebooting the Mac without the option to reopen the apps. When the reboot is done our app is opened, we see a little dot underneath (nothing exists to start it on boot). I saw display problems in Monitor app.

For one customer, after uninstalling our app, it does appear in App Store, but the "get" button is grey and cannot be clicked. Our app is not on the SSD and not in the garbage bin.

I compiled a special version of my app with no sound, all the code related to the possible crash completely commented. I gave it to 2 users and the app does not start.

After cleaning everything, rebooting and reinstalling the app, I have one customer that gets a message that the previous opening of the app crashed. But the 2 choices (do not open or reopen) don't work. It juste either do nothing or crash again and again.

My Theory is that there is an old bug in macOS that my app triggered. And from that moment on, macOS will stop behaving properly.

My app was compiled with the lasted Xcode and apple libraries (I only use the basic Apple libraries, no 3rd party stuff) as of last month.

My customers are angry and I tell them to get help from Apple customer service. The problem is not in my app, but something get stuck in macOS that makes the app never start again.

The app was working, even my latest update, then after 1 crash it never start again, even after cleaning, rebooting and reinstalling the app.

I can't fix this on my side, an app that crashes should not ever break the entire OS.

I want to reiterate that my app does work for me an thousands of people and that even a new version without any possible problem manually put on desktop does not start either.

When we uninstall and reinstall an app, it should work as it did, not leave behind some hidden crap that makes it never start again.

When we uninstall and reinstall an app, it should work as it did

I understand your position here, but that’s never been true on the Mac [1]. When you delete an app on macOS, the system doesn’t delete the app’s container [2]. That’s because the app container might contain vital user data, and there’s no way for macOS to know if the user has another copy of the app elsewhere on their system, or perhaps on an external hard drive that’s not connected right now.

Given that reality, there are a couple of things you can do here. The first is to ask one of your affected users to remove the app and then delete the app’s container. You’ll find that in ~/Library/Containers. My advice is that you work through the process yourself, so that you can figured out the exact instructions, and then send those instructions to one of your affected users, just to see if this helps.

IMPORTANT The user-visible name of your app’s container is likely different from the on-disk name, so make sure your work through this process as a normal user would. The ~/Library directory is hidden, but you can navigate to it in the Finder by choosing Go > Go to Folder.

If that resolves the issue for this user then you gain two benefits:

  • It’s a reasonable short-term workaround that you can share with other users.
  • It tells you that the issue is problematic state in the container. That’ll be useful for your debugging efforts.

The second thing to do is to try to figure out why the app isn’t starting. You wrote:

I compiled a special version of my app with no sound

Oh, cool, that’s an excellent debugging approach.

I gave it to 2 users and the app does not start.

I’d like to clarify what “does not start” actually means. I’ve see three different behaviours that could fall under that umbrella:

  • The system refuses to even attempt to start the app (A). That is, none of the code in the app runs at all.
  • The system starts your app but it crashes on launch (B).
  • The system starts your app but it exits on launch (C). This one is tricky because there’s no crash report.

To tease these apart I run the app from Terminal. For example:

% /Applications/PCalc.app/Contents/MacOS/PCalc 

You’ll see one of three outcomes:

  • The system refuses to run the code (case A), in which case you’ll get at least minimal info from the shell as to why.
  • The system runs the code and it crashes (case B), in which case you’ll get an obvious message from the shell and a crash report.
  • The system runs the code and it exits (case C), in which case you can find out the exit code (see below) and you might also get some useful diagnostics printed to stdout or stderr.
% echo $?
0

It’s tricky to walk a user through this sequences, but it’s probably worth it.

Share and Enjoy

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

[1] Strictly speaking it’s not even true on iOS. While iOS is much better about removing all traces of on app when you delete it, there are two ways that an iOS app can leave state behind that could cause problems for a subsequent re-install:

  • If the app shares an app group container with another app
  • In the keychain [3]

[2] We’re talking about sandboxed apps here. For non-sandboxed apps there isn’t even an app container that the system could delete!

[3] Although this is currently still the case, it’s not something you should rely on.

I deleted all the files that contains the name of my app from the terminal using the find command.

Sometimes it does start and crash and I can get a crash dump. Other times it does nothing. But I will check from the terminal to see if I can get more infos.

It will take a while to test again since I don't have access to the user computer.

macOS should have a way to uninstall an app for real, not leave hidden things all over the place. Apple decided to force us to use their store, then it is their responsibility to install them properly and clean them properly. macCatalyst app are sandboxed, I cannot to that myself.

Thanks for the help.

But I will check from the terminal to see if I can get more infos.

Cool. I look forward to the results.

macOS should have a way to uninstall an app for real

As I mentioned above, this is technically challenging, but if you’d like request this officially I recommend that you file it in Feedback Assistant.

Please post your bug number, just for the record.

macCatalyst app are sandboxed

Just to be clear, Mac Catalyst apps don’t have to be sandboxed. Rather, the Mac App Store requires sandboxing. And macOS gives you the option to distribute directly using Developer ID signing.

However, I can understand why folks choose to ship their app on the Mac App Store, so your point is well taken in general.

Share and Enjoy

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

Mac Catalyst App No longer start : Cause bugs in App Store and weird macOS behaviour
 
 
Q