Archive for April 1, 2022

Friday, April 1, 2022

External Link for Reader Apps

Apple (Reddit):

With reader apps, people can sign in to their account created outside the app, letting them view and enjoy previously purchased media content or content subscriptions on their Apple device. If you’d like your reader app to also provide a link to your website where people can create and manage their account, learn about requesting the External Link Account Entitlement, usage guidelines, and implementation details.

In order to be eligible, your app must:

As the primary functionality of your app, provide one or more of the following digital content types; magazines, newspapers, books, audio, music, or video.

[…]

Not offer in-app purchases on iOS or iPadOS while using the External Link Account Entitlement

[…]

Apple is developing a new External Link Account API that will provide the in-app modal sheet. Once this new API becomes available in a public release of iOS and iPadOS, you’ll have 30 days to adopt it with the next update of your app. In the meantime, you’ll need to build this modal sheet by following exactly the design specifications provided below.

Mitchell Clark:

This should help improve the historically bad user experience for these types of apps caused by Apple’s previous rules. Previously, if you downloaded the Netflix app but didn’t have an account, Netflix wasn’t allowed to give you a link to sign up or tell you where you could go to create an account. That made apps frustrating for users who didn’t have accounts and forced developers who didn’t want to use Apple’s in-app payment system (and give up 30 percent of their revenue) to make a worse experience for potential customers. Now, developers should at least be able to make a button that takes you to their website.

Kyle Howells:

Wow! You can now apply to Apple, for the potential opportunity, to tell your users that your website exists!

Can’t wait to see what such an innovative company comes up with next!

Nilay Patel:

Has there ever been clearer visual evidence that Apple thinks every interaction you have on an iPhone belongs to them

Adam Demasi:

I love the straight up false text that you’re “no longer transacting with Apple”, but, you never were transacting with Apple in the first place??

When will I be required to tap through one of these interstitials when I buy something in the Amazon app, or hail an Uber?

Michael Love:

Seems like it might work for Pleco if a) they approved it and b) I made a separate no-IAP version of Pleco to comply with their guidelines.

But I don’t know if it’s worth going to the trouble, particularly with the likelihood of legislation forcing them to go way beyond this.

Interestingly, there does not seem to be any prohibition on using Reader entitlements in paid apps, so if this does turn about to be all the opening we get out of Apple, one workaround I could consider would be to charge say $20 for Pleco-plus-features + sell content via a link.

Previously:

External Purchase Without a Separate App

Apple (Hacker News, MacRumors, tweet):

Apple is eliminating the requirement that developers of dating apps in the Netherlands who choose to use the above entitlements must create and use a separate binary.

[…]

Apple is providing updated and more-specific criteria to evaluate non-Apple payment service providers that developers of dating apps in the Netherlands may use.

[…]

Apps that use either entitlement need to include an in-app modal sheet that explains to users that they’re going to make purchases through an external payment system, and the potential impact that choice could have on the user. Apple is adjusting the language on the modal sheet and reducing the number of times the sheet must be displayed.

Before, the required language was:

Title: This app does not support the App Store’s private and secure payment system

Body: All purchases in the App Name app will be managed by the developer “Developer Name.” Your stored App Store payment method and related features, such as subscription management and refund requests, will not be available. Only purchases through the App Store are secured by Apple.

It is now:

Title: You’re about to leave the app and go to an external website. You will no longer be transacting with Apple.

Body: Any accounts or purchases made outside of this app will be managed by the developer “Developer Name.” Your App Store account, stored payment method, and related features, such as subscription management and refund requests, will not be available. Apple is not responsible for the privacy or security of transactions made with this developer.

Michael Love:

Still charging 27%, though, so I don’t know why the ACM or the affected dating companies would accept this unless all they want is a token symbolic victory.

Steve Troughton-Smith:

Fun loophole in Apple’s ‘dating apps in the Netherlands’ policy:

“[devs] using these entitlements will be required to provide [every transaction] that has been facilitated through the App Store”

However, external link policy prohibits parameters & only allows for a single link

[…]

So depending on your reporting/analytics practices and how you choose to implement this, you may have no data whatsoever as to whether a transaction has been facilitated by the App Store, or whether it was generated outside of the App Store

Nick Heer:

The big question for me is whether this purchase flow will be expanded beyond dating apps and outside of the Netherlands. It is becoming quite polished, and permitting it within an existing binary seems like a possible — albeit unlikely — path toward broader use.

Previously:

Update (2022-04-11): John Gruber:

Baby steps, but all of these changes are in the direction of decreasing regulatory pressure. Apple can be stubborn but they’re not stupid.

Dimitri Bouniol:

I just confirmed YouTube has been skirting IAP rules by redirecting to Safari to process the card transaction themselves. Of course, now that I try again, they are showing proper in-app-purchase sheets. Seems like they were A/B testing it to see if they can get away with it?

Update (2022-04-13): Dave Howell:

I was cheesed when Phil Schiller, out of the blue, decided that the QuickTime 3 installer was going to cost developers a couple of bucks for every installation, with absolutely no way to help us track installs. Announced at WWDC with no warning. Boneheaded. Finally retracted it.

Nobody could answer basic questions like what if the user already has QT3 installed? Or what if they get a refund? Or what counts as an install vs a shipment, etc. The WWDR folks just said, in obvious exasperation, Dunno, ask Schiller.

Intel Virtualization and Apple Silicon

Apple (Hacker News):

This sample code project demonstrates how to install and run macOS virtual machines on Apple Silicon using the Virtualization framework.

But what if you want to use an older version of macOS, which doesn’t run on Apple Silicon?

Steve Troughton-Smith (tweet):

The transition to Apple Silicon brought about many exciting things, but one of the capabilities left behind was access to the world of Intel-based virtual machines. X86_64 just isn’t a trivial architecture to emulate, and it may never be feasible to do so on Apple Silicon at a useful speed as the operating systems you wish to run gain more and more complexity and become more and more demanding.

You have plenty of great options for emulation, like UTM, but the performance penalty is significant, and that rules out many use-cases.

[…]

VMware no longer boots anything under Rosetta, and the VMware Fusion Apple Silicon preview only supports virtualizing Linux as Microsoft’s licensing story for Windows on ARM does not include the Mac.

[…]

VMware have an enterprise-level operating system called ESXi, which is a bare metal hypervisor. What does that mean in practice? If you have a spare PC and Ethernet, you can install ESXi as its OS, configure it over the network through a web browser, and have it become the dedicated engine that runs your VMware virtual machines. With VMware Fusion Pro, you can connect to that ESXi machine via its IP address, and then be able to run/manage your virtual machines mostly the same as when you could run them locally.

[…]

What you do get, though, is near-native performance, without taking up any of the resources of the Mac you’re working on.

Previously:

macOS 12.3.1

Juli Clover:

macOS Monterey 12.3.1 comes two weeks after the launch of macOS Monterey 12.3, an update that brought Universal Control.

Note that Universal Control remains in beta.

According to Apple’s release notes, macOS Monterey 12.3.1 introduces a fix that could cause Bluetooth controllers like game controllers to disconnect from the Mac after playing audio through some Beats headphones. It also addresses a bug that could cause USB-C or Thunderbolt external displays to not turn on when connected to the 2018 Mac mini as a secondary display.

Howard Oakley:

Additionally, this addresses two other issues. The first are those few MacBook Pro 2021 models which have been unable to update to 12.3; this update should enable them to update to 12.3.1 successfully. The other is a strange bug which caused flickering in half a dozen pixels on Thunderbolt or Cinema Displays when connected using a USB-C to TB adaptor, with an M1 Mac; that has now been fixed too.

I’m glad to hear that this apparently fixes the severe bug in AppleScript which caused open [file] to fail. However, it doesn’t fix or alter in any way the memory leak seen in the Finder’s Find feature, nor does it display charge levels during recharging of Apple wireless input devices.

There are two security fixes included in this update, detailed here.

See also: Mr. Macintosh.

You can download the installer here.

Previously:

Update (2022-04-12): Joshua Long (via Meek Geek):

After [more than] a week, Apple still has not released corresponding security updates to address the same vulnerabilities in the two previous macOS versions, Big Sur (aka macOS 11) and Catalina (aka macOS 10.15).

Both of these macOS versions are ostensibly still receiving patches for “significant vulnerabilities”—and actively exploited zero-day vulnerabilities certainly qualify as significant.

Apple Sales Support and Apple Card

I ordered a Studio Display as soon as it was announced, but it wasn’t slated to ship until around March 31. That estimate seems to have been accurate because yesterday I got an e-mail saying that I needed to update the payment method. It ended up taking about an hour to get Apple to fix the order.

At first glance, everything looked OK. The order status page showed that it was billed to my Apple Balance—I had collected a bunch of discounted gift cards in anticipation of hardware purchases this year—and then my Apple Card for the remainder.

I still had a gift card balance, and my Apple Card was well below its limit. I tried selecting the Apple Card attached to my Apple ID again but got an error that it was “invalid.” I tried actually entering the number of the Apple Card (from the Wallet app), and that also failed. Finally, I tried entering a Bank of America card (also well below its limit) and got an error there, too.

I started a chat with Apple and explained the above. After investigating for a while, I was told that the problem was that between placing the order and when Apple decided to bill for the display, my iCloud subscription had reduced my balance by $2.99. (The Mac App Store app, a week later, still shows the old balance, even after rebooting.) I guess since the iCloud charge changed the amount that would go on the card they needed me to confirm the card again. (Given the number of customers Apple has and how long they’ve been aggressively pushing subscriptions you’d think they could predict this sort of thing in advance or have a streamlined flow to fix it, but no.)

The chat agent directed me to update the payment method at the Web site that I’d already said didn’t work. In fact, it was on that page that I had clicked the link to get help. I then found out that the support department that they payment method page had directed me to did not actually have the power to fix payment method problems.

So the chat agent offered to have the appropriate billing support person call me. Not to worry, all the information about my case would be entered into the ticket so that I wouldn’t have to repeat it. They tell me this every time. It has never been true.

While I waited for the call, I downloaded the chat transcript. Most companies give you a .txt file. Apple gave me a beautiful PDF file. It was larger than 1 MB and contained no text that was searchable or copyable.

My phone rang. Indeed, it was not true. The agent had no idea what issue she was calling me about. I explained it all again and then found out that the she was from the media subscriptions department. They can’t help with hardware orders.

She transferred me to Apple Store support. I explained again. The store agent tried to put the order on my Apple Card and said it was declined because of the limit. She asked me to check the limit. It’s an Apple Card, so I can easily do this in the Wallet app. It said I had several times the required amount available. I don’t autobill anything to that card and had no other recent purchases. She didn’t know what to make of that, but she could transfer me to the right person at Citizens Bank to investigate why the charge was declined. Ah, something only Apple can do, since the store and card are integrated so. But…Apple Card is issued by Goldman Sachs, not Citizens. No thanks.

The reward points are not worth it. Can they just put it on my Bank of America card? I gave the number over the phone, and somehow that worked despite failing multiple times in Safari. Finally.

“It will ship in 4–6 weeks.” Huh? The order status page still says it will be delivered March 31–April 7, like it always has. (It now is March 31; there’s no way it will be delivered the same day.) But, apparently, the Web site is wrong. The store people use a different, more accurate system. I should expect weeks.

An hour later, I received 4 e-mails saying that my order’s payment method had been successfully changed.

Today, I received a notification that the order had shipped and would arrive tomorrow. The Apple Store app and the order status page still say that it is “Preparing to Ship,” yet it might still be delivered on March 31 (yesterday). There is no tracking information available. I guess I’ll see what happens tomorrow.

Previously:

Update (2022-04-01): A few hours later, I received an e-mail saying it would be delivered on April 5. A tracking number was included, which indicates that it hasn’t shipped yet. The order status page still says March 31–April 7, with no tracking number, and it recommends visiting “Track Shipment,” which isn’t linked.

Wider Alerts on Monterey and Big Sur

Pierre Igot:

Don’t care what Apple thinks. There is no world in which the combination of these two different UI schemes (different look for buttons, different font size, different layout, etc.) in the same process looks good.

It just looks like a half-baked idea (if you can call it an idea).

Léo Natan:

Do you prefer the old style macOS alerts? There is a way to get them globally for AppKit in Big Sur and Monterey:

defaults write -g NSAlertMetricsGatheringEnabled -bool false

Previously: