Jeff Johnson (My apps, PayPal.Me, Mastodon)

App Store Review continues to delay updates for no reason

February 14 2023

Happy Valentine's Day to everyone except Apple's App Store Review!

My story does have happy ending: my Safari extension StopTheScript is now updated in the iOS App Store. If you're not familiar, StopTheScript is unique in that it stops all JavaScript on your selected web pages, including inline JavaScript, a capability not possessed by Safari content blockers, which can only stop externally loaded scripts. The new version 1.2 of StopTheScript contains a single change: a redesigned launch screen with improved instructions for enabling and using the Safari extension. Ironically, this very minor update triggered a rejection and delay from App Store Review.

I submitted version 1.2 the evening of February 9, and it went into review the morning of February 10. Nothing happened that day, but I awoke the morning of February 11 to an email from App Store Review, sent at 1:30am Cupertino time, titled "We noticed an issue with your submission." Below is what I saw when I opened App Store Connect.

App Review Guideline 2.1 - Information Needed -For what purposes does your app's extension requires read and write permissions?

Here's the attached screenshot:

StopTheScript would like to access en.wikipedia.org.

This screenshot wasn't taken by App Store review though; it's one of my own App Store screenshots! In fact it's not even a new screenshot, as you can see from the date "Sat Oct 2", but just an old screenshot carried forward from an earlier version of StopTheScript (in the App Store since October 2021). As I said, nothing changed in the new version except the launch screen.

Safari extensions run scripts inside web pages, and Safari requires user consent for this, as I explained a few years ago in my blog post The security of Safari extensions. Without user consent, the extension doesn't work at all. App Store Review should know how to use Safari extensions, and understand the Safari permissions system, since they review Safari extensions, right? Yet it appears that my reviewer didn't know. It's frustrating for everyone, developers and users both, when App Store Review is incompetent to do their own job—which is too often the case! Anyway, I replied in App Store Connect that morning, providing a reluctant remedial lesson to the reviewer.

Afterward, nothing happened for more than two days. The submission remained rejected. Fortunately, I wasn't in a hurry to release the update, since it was merely a launch screen revision, but what if this had been an urgent bug fix update? Eventually I did get tired of waiting, and I was becoming concerned that they totally forgot about me, so yesterday evening I "poked" again in App Store Connect, reiterating that I had answered the reviewer's question and requesting that the review continue. This morning at 12:30am Cupertino time, the update went back into review, and it was approved two minutes later. In total, the review of my minor App Store update took nearly four days, not even counting the time spent "Waiting for Review".

App Store developers have to put up with this kind of crap all the time, but App Store users—indeed App Store defenders and apologists—never see it. That is, they never see it unless we developers write about it. Most Apple users have no idea about the gross incompetence and Severance-like bureaucracy of App Store Review. I don't even care that much about Apple's "cut" of my proceeds, I just want the ability to ship my software without the oversight of Keystone Kops.

Jeff Johnson (My apps, PayPal.Me, Mastodon)