Friday, March 6, 2020

iOS Default Apps and Competing With Built-in Apps

Charlie Sorrel:

In iPadOS and iOS 13, you can kinda replace the stock Apple apps on your iPhone or iPad. For instance, anytime you tap the Mail icon, Spark could launch instead. Or, and this is probably the most useful, when you tap the lock-screen shortcut for the Camera app, you could launch Halide instead.

[…]

Here’s how it works. You make a Shortcuts automation that is triggered when you open the stock Camera app. When triggered, it opens the camera app of your choice.

Mark Gurman:

The issue has become more prevalent as Apple’s selection of apps has grown. In 2007, the iPhone had 17 pre-installed apps. Today, there are 38. And since the App Store launched in 2008, Apple has never let consumers set a third-party app as a default option, unlike on Android, Windows, and Apple’s own macOS computer operating system. Android users can pick Firefox as their go-to browser relatively easily, for instance.

A House antitrust panel wrote to Apple recently to demand executive communications relating to iPhone default apps. The lawmakers want to learn about the company’s policies on whether iPhone users can set non-Apple apps as defaults in categories including web browsers, maps, email and music.

“This sounds like Microsoft in the 90s,” said David Reichenberg, an antitrust lawyer at Cozen O’Connor.

Microsoft did let you set a different default browser, and different browsers were allowed to provide their own rendering engines, unlike on iOS.

Joe Rossignol:

Apple plans to release a software update later this year that will make Siri more flexible with third-party messaging apps like WhatsApp, Skype, and Facebook Messenger, the company told Bloomberg’s Mark Gurman.

[…]

It will still not be possible to straight-up set third-party apps as default on an iPhone. Instead, the report claims Siri will decide which messaging app to use based on interactions with specific contacts.

Mark Gurman:

An Apple spokesman provided the following statement:

[…] In the few categories where Apple also has an app, we have many successful competitors and we’re proud that their success is responsible for almost 2 million U.S. jobs in a thriving multibillion dollar market for developers. Our North Star is always to create the best products for our customers and that is why iPhone has the highest customer satisfaction in the industry.

Apple-made apps that are pre-installed on iPhones represent only 0.00002% of the roughly 2 million apps in the App Store, the company also noted.

[…]

It offers developers free marketing in the App Store and on social media, gives personalized recommendations to users who might be interested in their apps, and provides advice from the Apple developer-relations team.

Michael Love:

These responses are somewhat infuriating.

Steve Troughton-Smith:

We all know Apple doesn’t play in the App Store on a level playing field; many people excuse this with “it’s their store, they can do what they want”, which I think is trash. If antitrust litigation forces Apple to do right thing, so be it

If you statically analyze Apple’s App Store apps (like I’ve had to do for experimentation with marzipanify), you’ll find that almost none of them would pass App Review if submitted by an external developer. They get all kinds of private API access and special entitlements

Setting app defaults is just the start of the story; even as the default app, it will be hard to compete fairly with the special privileges Apple grants its own apps

The question is a totally legit one: does Apple compete fairly with apps on its App Store? All of us developers know the answer is ‘of course not’. Many users might know this too. Detractors attack the question instead of the facts behind it because that’s all you can do

Does Apple empower developers? Heck yes. Have they created entire new industries and millions of jobs? For sure. Is iOS a great platform to develop for? Absolutely! Two things can be true at the same time; Apple giveth, Apple competeth unfairly

As a developer, I’m afraid that even antitrust litigation will miss the forest for the trees, and only address setting default apps on iOS, which would be an easy token gesture for Apple to give and wouldn’t really address the underlying problem

I have literally had Apple reject an App Store app of mine (with a ‘never gonna happen’) only to introduce one a few months later with the same app name, icon and purpose 😂 (that was ‘Files’). Apple even gets to unfairly compete with not-yet-released apps

Yoav Weiss:

This happened to me too on watchOS. I submitted an app that displayed multiple swipeable white screens and acted as a flashlight on your wrist. Apple called and said “too many flashlight apps for iPhone”. Me: this is for ᴡᴀᴛᴄʜ. Apple: behold! watchOS 4 with flashlight!

Andrew Chidden:

Apple also loves picking favorites. One WWDC showcased our competitors with a critical feature previously removed from watchOS. Prior to WWDC Apple told us to pound sand when we asked about the feature, so we had already pivoted the team away.

I’m now at a company that Apple “likes”, and the difference is striking. We know about certain things well in advance, our app is shown on stage + Apple.com, and we don’t get blocked from the App Store for half the year.

Eric Lewis:

This is 100% true, I got away with some amazing stuff with my relationship with Apple. Including background location in a way beyond anything they’d ever allow.

David Barnard:

The problem I have is when Apple doesn’t allow 3rd party developers to compete even when that competition wouldn’t cause security or privacy issues.

The example I gave @markgurman on that was my @Timer app. I’ve begged Apple for the critical alerts entitlement so that my timers can compete with the system timer in alerting people even when the mute switch is on or volume turned down. I get so many confused support emails.

And as I complained earlier this summer, @LaunchCenterPro pioneered the use of NFC stickers for triggering shortcuts on iOS, but Shortcuts added NFC with special background access that 3rd party apps don’t get.

What’s ultimately best for iOS customers is a vibrant 3rd party developer community that’s allowed to better compete with 1st party apps AND Apple integrating some things into 1st party apps that just shouldn’t be allowed in 3rd party apps.

Mark Gurman (MacRumors):

The technology giant is discussing whether to let users choose third-party web browser and mail applications as their default options on Apple’s mobile devices, replacing the company’s Safari browser and Mail app, according to people familiar with the matter.

John Gruber:

Users have been clamoring for this ever since the App Store opened. I get why Apple has been cautious about allowing this, but at this point it’s overdue. There are third-party email clients and web browsers that are really good — Apple should celebrate that fact.

[…]

Siri does support third-party apps — you just have to specify them by name: “Hey Siri, play some Pearl Jam from Spotify”. It makes sense that this should be a setting too — if you’re a Spotify user it’s a bit ridiculous that you’re currently required to tack on “from Spotify” with every single request.

Benjamin Mayo:

That small change would cover the use cases of what most people think up when they say they want the ability to set default apps. With such a trivial amount of work involved, that is probably what Apple will do. Competition regulators would probably be appeased by it. However, if you were actually trying to design a system that treated third-party and first-party apps as equals, there’s a lot further to go.

Apple’s stock apps have a lot of privileged system behaviours. For instance, Mail gets to poll the server for new emails on a regular schedule. You can go into Settings and set to check for new mail as often as once every every fifteen minutes. Third-party email apps can only use the sanctioned background refresh APIs, which throttle updates significantly and do not have any guarantees of regularity. This means the majority of third-party email apps have to be backed by a cloud service that checks inboxes and sends new mail push notifications to the device. Apple Mail also has deep and granular options for notification preferences; a user can choose how and where notifications appear on a per-mailbox basis, and do things like let messages from VIP contacts hit the lock screen whilst sending everything else silently to Notification Centre. No App Store app has the capability to do that stuff.

Jason Snell:

The Files app never wants to let you open a bunch of file types directly in an external editor. PDFs and audio and video files? Forget it—those open in Quick Look if you tap on them or tap Open in the Get Info view (which is the same view that appears if you tap on a file when you’re in column view). To open these files, you need to choose Share and then send them to another app.

For other file types, you can indeed set a default—so long as the app in question supports opening files directly. To do this, you tap and hold on a file, then choose Share from the resulting contextual menu. From the resulting share sheet, choose an app from the list of apps at the very top, or swipe all the way to the end of the list and tap More to see even more options. What you want is an option to “Open in [name of app].”

John Gruber:

This whole thing about being able to map a default handler for file types — but not PDFs or audio or video — is bananas. Bananas that even Jason Snell didn’t know about it, bananas that PDFs and AV files are special-case locked to Quick View, bananas all around.

Jared Sorge:

If one of the benefits of setting your default browser to (let’s say) Chrome so you have access to all the Chrome things all the time would it be jarring for a user to see Safari inside of their Twitter app when they tap on a link? Would Apple provide some kind of hook inside of SFSafariViewController to actually show the content of a third-party app like this? If I’ve purposefully gone and set Chrome as my default browser then I sure don’t want Safari ever getting in my way.

There’s also similar code around MFMailComposeViewController for sending emails in apps (I use that in Scorebook) as well as MFMessageComposeViewController for sending iMessage or SMS messages. Would they allow users to pick their email or message client and slide up those experiences as well?

Previously:

Comments RSS · Twitter

Leave a Comment