Safari comes on all Macs as the default browser. And it is great in many ways – I actually enjoy using it. But I hate developing for it…
A few years ago, Apple announced Safari extensions – a way for developers to add features to Safari. Great, they even created this Safari Extensions Gallery! It was a great fit for Downie as it allowed sending links to the app with a single click, no drag & dropping, etc. Easy, convenient. The initial extensions were an HTML page with some JavaScript code.
All was working great until I got first bug reports from Downie users. They downloaded the extension, opened it with Safari and Safari asked them if they trust the extension. They confirmed that they trust it and … Safari did nothing. It didn’t install the extension. So I filed a bug report with Apple on Dec 20, 2015. The issue is still open and very unlikely to ever get fixed as Apple switched to a new extension format – app extensions.
App extensions are small subprograms that are bundled right within the app and the system detects them automatically (or at least it should). With this announced, I immediately created the app extension as it would fix the above-mentioned issue with installation – the system automatically detects the extensions, right? It works just like various app extensions on iOS – they are used in the share sheets, action sheets, they are used in the Today View, etc.
Full of hope, I got disappointed very quickly:
- the extension kept crashing – not in my code, in Apple’s
- the extension did not work when the window was in full screen. It took Apple almost 6 months to get this fixed.
- there are issues I’ve reported over a year old, still open that relate to debugging the app extensions
- and mostly – Safari often fails to list Downie’s extension
The last issue is the most critical one – there are many users who have trouble getting Safari to pick up Downie’s extension. The Safari teams recommends installing the app from the AppStore (I wish – Apple won’t allow Downie on the AppStore) or install the extension in the old (now formally deprecated) format from the Safari Extensions Gallery (I’ve tried to submit it, it got rejected).
I am desperate to help Downie’s users to get the extension listed in Safari, but unfortunately, this is not up to me. This is up to Apple. And they seem to care less and less about the Mac platform and mainly about apps that are not from their precious AppStore.
I’ve had my share of anger with the Safari team which is the worst from all the teams at Apple I’ve encountered so far. They are quick to dismiss anything and it almost seems like they don’t care at all. I’ve filed a bug report about Safari’s Web Inspector – if you selected part of some source code and copied it, the entire source code, or a different part of the source code got copied. It was completely unusable. Took Apple a year to fix that! How is a web developer supposed work when something like this is happening?!
But back to Downie and the extension – to sum it up, Safari is responsible for listing extensions on its own – if it’s not listed after you move the Downie app to your Applications folder, it is a bug in Safari. There is a bunch of tips that can help Safari notice the extension:
- move Downie app using Finder from and back to the Applications folder
- relaunch Safari
- reboot your computer
- try rebuilding LaunchServices using OnyX (https://www.titanium-software.fr/en/onyx.html) – select Maintanance > Rebuilding and make sure that LaunchServices is checked. Click on “Run Tasks” and when done, reboot your computer.
In either case, please consider filing a bugreport with Apple at https://bugreport.apple.com – the more people show that this is an issue for them and the more people show that they need for Apple to fix the issues, the more likely are we going to get a fix for this – perhaps in a few years or a decade…