Archive for June 5, 2018

Tuesday, June 5, 2018

Mac App Store Sandboxing, IAP Trials, Multiplatform Services

John Voorhees:

As the changes announced implicitly acknowledge though, the problems with the Mac App Store run deeper than its design. The Mac App Store has suffered since its inception from editorial neglect, a lack of feature parity with its iOS counterpart, the lack of access to TestFlight beta testing, and restrictive sandboxing that has made selling outside the store more attractive to many developers.

With the update to the Mac App Store in the fall, Apple is addressing some of those issues including sandboxing restrictions.

I’ve not seen any details about the sandboxing changes.

Chance Miller:

Apple today has updated its App Store Review Guidelines with a handful of changes. The new guidelines include revisions related to data security, cryptocurrency mining, free app trials, advertising, and more.

alex hern:

By updating the App Store guidelines to explicitly allow “Multiplatform services”, Apple appears to have explicitly disallowed the Kindle/Comixology compromise. Will be interesting to see if they push that.

Juli Clover:

A new guideline, 4.2.7, says that all Remote Application Mirroring apps, such as Steam Link, must comply with a specific set of rules. Such apps are not allowed to offer a user interface that resembles an App Store view or a store-like interface, nor can they include the ability to purchase software not already owned by the user. Apple is allowing transactions to be made by remote mirroring apps, as long as purchases are made on the host device rather than the iOS device.

[…]

A new rule, 2.3.12, states that all apps are required to “clearly describe” new features and product changes in their “What’s New” text. Apps can continue to use generic descriptions for bug fixes, security updates, and performance improvements, but anything more significant must be listed in the notes.

Mitchel Broussard:

Like on iPhone and iPad, the Mac App Store will have articles written by Apple editors to showcase useful apps and games currently popular on the App Store. This will be found in the Discover tab and include stories, interviews, tips, app collections, and more.

[…]

The company also mentioned that later this year, apps like Office from Microsoft, Lightroom CC from Adobe, BBEdit from Bare Bones, Transmit from Panic, Live Studio from Snap Inc. and Houseparty, among others, will be made available on the Mac App Store.

Cabel Sasser:

🚨 App Store Free Trials. So important, it should’ve been in the keynote. (I haven’t 100% confirmed this, but it apparently applies to the Mac App Store too.)

Panic:

🧞‍♂️ So! Transmit 5 in the Mac App Store, coming later this year. Why?

• Coming improvements to sandboxing finally let us offer all Transmit 5 features in the App Store version.

• The new, redesigned Mac App Store is a store we’d like to be in.

But there’s a little twist!

🧞‍♂️ Our idea: Transmit 5 on the Mac App Store will be a subscription, while Transmit 5 direct from us will remain a one-time purchase. The choice is yours! Think Transmit 5 is too expensive or need it briefly? Subscribe. Hate subscriptions and prefer to own apps? Buy from us.

🧞‍♂️ (This approach also allows us to provide free trials on the Mac App Store, at last.) Hopefully we meet (almost) everyone’s needs, get experience with subscription models, and pull a classic Panic “gotta keep things interesting!”.

Panic:

We’d like for Coda to return to the app store eventually. Right now, Coda cannot be properly sandboxed and still maintain the user experience we’re aiming for. We’re hoping that a few specific sandboxing improvements will land in the future, which would allow it. Stay tuned! –T

Ryan Jones:

Apple made the free trials for Paid apps “loophole” that Omni is most famous for using legal. Kinda handicapped instead of proper support.

Ken Case:

Yes, Apple has updated the App Store guidelines to explicitly allow the free trials approach they’ve approved for all our iOS apps over the last two years. (We worked very carefully to ensure this approach met Apple’s goals, and I’m glad they’ve now updated the guidelines!)

It’s not clear to me whether the guidelines now permit trials for all non-subscription apps, including ones that don’t degrade to a limited-but-still-useful viewer when the trial is over. Also, presumably this is still incompatible with Family Sharing.

Northern Virginia:

They’re really bending over backwards to do it in the most awkward way possible

Luc Vandal:

They seem to be a pain to implement and I’m not looking forward to the 1-star reviews left by users that didn’t end up purchasing. It’s Apple saying “FINE! You can people can have your free trials but we won’t make it easy for you.”

Rich Hong:

App Store Review Guidelines diff: WWDC 2018 Edition.

Previously:

Update (2018-06-06): Rosyna Keller:

Some [sandbox changes], yes. And there are new entitlements you can use if you need certain changes.

Update (2018-06-07): Daniel Jalkut (tweet):

I think it’s particularly important, in the face of all the celebration this week about Apple’s perceived changes to the App Store, to understand the many ways in which this solution falls short of what many developers still hope for: bona fide support for real free trials in the App Store.

[…]

Paid apps are listed as free, even though payment is required to unlock core functionality.

[…]

Bulk purchase programs are unavailable.

[…]

Family sharing is unavailable.

[…]

Not applicable to all app types. Although Apple doesn’t explicitly state it in their revised App Review Guidelines, I strongly suspect that a continuing requirement for ersatz free trials is that the app must continue to function in some way as a perpetually free, unlocked app.

[…]

Apps are ranked and featured in the wrong charts.

[…]

Transaction mechanics are pushed onto developers.

[…]

Apps cannot be made to “just work” out of the box.

Read the whole thing.

Ken Case:

I’d love for the App Store to let free downloads categorize themselves as paid!

Luc Vandal:

As @danielpunkass pointed out, those App Store “free trials” are just a workaround that’ll confuse users and be a pain to implement and maintain for developers. Time that could be spent on improving our apps instead.

A better solution would’ve been to implement trials at the App Store level but I understand that Apple doesn’t want to spend time on this considering their stance on the issue and their push toward subscriptions.

Paul Haddad:

I really don’t care about free trials. Proper paid upgrades are far more important, I’d love to know why Apple refuses to implement them.

Michael Love:

Just realized an equally amazing consequence of this change: we can sell IAP to volume purchasers now!! I can sell a school 1000 copies of Pleco at a big discount and it’s totally OK with Apple that I did so.

Apple might be unwilling to put in the engineering time to actually support IAP with their own volume purchase program, but (as with IAP “free trials”) at least now they’re no longer standing in the way of my doing so independent of them.

Chris Liscio:

Not a single thing that I was hoping to hear about. Still no word on TestFlight for macOS, and nothing about the new Mac App Store providing analytics on page visits, etc.

30% cut: Develop your own beta program, no insight into where store traffic comes from, and DIY trials.

Update (2018-06-08): Ken Case:

I wonder how many people realize that the free downloads approach we’re now using doesn’t just solve the problem of free trials, but also the problem of upgrade discounts?

Until VPP supports in-app purchases, though, it means many business sales have to be outside the App Store.

Note that in order to keep the app available for anyone who doesn’t upgrade, each major version has to be a new SKU in the Mac App Store.

Update (2018-06-13): Drew McCormack (tweet):

I don’t want to get into a point-by-point debate on the topic; instead, I want to do something that I haven’t seen anyone do: try to understand why Apple don’t want the sort of free trials that are being demanded.

I do not agree that every developer rolling their own IAP-based solution is going to be clearer to the customer than Apple implementing trials in a uniform way.

Update (2018-06-15): Ken Case:

WWDC didn’t bring any news regarding the Volume Purchase Program and in-app purchases, so we’re planning to work out an alternative solution.

For those out there looking to make a VPP purchase, would you prefer separate B2B apps, or MDM-deployed unlock logins for existing apps?

Update (2018-06-20): John Gruber:

I think “free app with a free in-app purchase to unlock a one-month demo period, which, when expired, will require a $20 in-app purchase” is fundamentally more confusing than “this app costs $20 but you can try it for free for the first month”. You just need good design to make that clear. The former is what we have now, the latter is what the indie community has been clamoring for ever since the App Store debuted. And don’t forget paid upgrades.

Aristotle Pagaltzis:

The problems with App Store free trials [are] are actually just problems of a single-button UI. With 2 buttons, one to start a trial and one to pay for the app right away, most of them evaporate. (As you said: design.)

See also: App Store Review Guidelines History.

Update (2018-06-21): Damien Petrilli:

May be a good sign from Apple to convince everybody that IAP and subscription are the future would be to provide tools to make them easily.

Juli Clover:

At the same time, Apple also quietly expanded its data sharing rules, as Bloomberg points out, introducing strict new guidelines that prevent app developers from collecting user data to build advertising profiles or contact databases.

Update (2018-06-29): Brian Roemmele (via Dave Mark):

In 1983, Steve Jobs gave a speech to the International Design Conference in Aspen. The theme of that year’s conference was “The Future Isn’t What It Used To Be”.

Steve presented a concept of an online software store. Where one could purchase software, have it sent over a phone line and pay for it with a credit card. In 1983, few thought of this idea. This concept became the Apple app store decades later in 2007.

Update (2018-07-27): Here’s a clean URL for jumping to your App Store subscriptions list (via David Barnard).

Apple Announces Marzipan for 2019

Mark Gurman (tweet):

During its annual developer conference, the Cupertino, California-based company said the two app platforms will merge next year, allowing apps built for its iOS mobile operating system to also run on Mac computers. Bloomberg reported the planned change in December, but Apple hasn’t talked about it publicly until Monday, when it gave a preview.

Lauren Goode (tweet):

The point of this is not to create a single unified OS, Federighi said. But the fact that Apple spoke openly about an initiative that could arrive as late as a year from now is a clear nod to how the tech giant perceives the future of apps.

At WWDC on Monday, Apple said some of its homegrown iOS apps, including Home, Stocks, News, and Voice Memos, would be available later this year on macOS Mojave, the next version of macOS. On the surface, it seems obvious that Apple might make some of its own apps available across different platforms. But behind the scenes, Apple has been building tools third-party developers can eventually use to port their own apps from iOS to MacOS with what Federighi insists will be minimal effort. Apple began this initiative around two years ago, and its own internal software engineers have been beta testing the tools. These four iOS apps for Mac are the products of that testing.

John Gruber:

Still very light on technical details. I get why they announced this a year early — because they wanted to start shipping their own apps built on this — but it’s so unusual for Apple.

Bob Burrough:

Craig says the goal is not to merge iOS and macOS, but that is inevitably where this will end up.

Steve Troughton-Smith:

“We’re not merging macOS and iOS!” …but btw almost all the new Mac apps we showed today came from iOS and use UIKit

Steve Troughton-Smith:

The ARM transition seems so obvious at this point, it’s not even news. But UIKit on macOS was definitely not how I expected them to do it

Steve Troughton-Smith:

Marzipan is wild. It’s running the UIKit apps with XPC & remote rendering. Not quite Mac OS Classic.app, but it totally feels like an alien OS hiding in the background

Steve Troughton-Smith:

Oh man

Steve Troughton-Smith:

So, Mac developers, how are you feeling about UIKit on macOS now you’ve had time to digest the news?

Steve Troughton-Smith:

Right now, it seems all-or-nothing; I would have expected apps with both AppKit & UIKit code, interleaved views, etc — but no way if they have separate window servers like now. That may change over timeSteve Troughton-Smith added,

Steve Troughton-Smith:

This is a fun UI on macOS

Colin Cornaby:

The current approach isn’t really evolvable into hybrid AppKit/UIKit apps at all so I’m not sure where this goes. The way the stack is oriented it’s not even remotely positioned to replace AppKit in the stack. Good for us AppKit lovers I suppose but generally confusing.

Colin Cornaby:

Ok one more Marzipan hot take.

It bothers me that if Marzipan is the “so you can’t afford to make a real Mac app” stopgap that Apple would ship key built in apps with it.

I know it’s dogfooding but it’s also Apple putting out second class Mac apps by their own definition.

Uli Kusterer:

From how I interpreted @stroughtonsmith’s spelunking so far, it is somewhere between a VM and NSOpenPanel. Out-of-process but transparent to the client app.

I think they’re taking the opportunity to move more of their code into a micro-kernel-like silo.

Colin Cornaby:

UIKit is not young. It’s about as old as Toolbox was when discussions started about it’s future, and it also is on a platform that’s outgrowing it.

Sticking it in a virtual environment is the perfect way to not commit to it while deciding your next move.

Previously:

Update (2018-06-06): Jason Snell:

It feels like Federighi’s cutting it awfully close on the “unique ergonomics” front, though. Apple itself sells a keyboard for the iPad Pro, and even allows users to move their fingers like they’re using a trackpad when editing text. The iPhone and iMac Pro are about as far as two devices can get from one another, but the MacBook and the iPad Pro are not.

In his interview with Wired, Federighi also pooh-poohed the idea that Apple might make a MacBook with a touchscreen. And yet one of Apple’s greatest arguments against touch on macOS—that Mac software was designed with keyboard and pointing device in mind—is going to very rapidly become obsolete as iOS-sourced apps appear on the Mac in 2019 and 2020.

Rob Griffiths:

I think it’s time for a new word…

Marzipandemic: The spread of single-window odd-UI originally-on-iOS apps to the Mac.

Update (2018-06-07): Colin Cornaby:

I still really wish they’d actually made a UIFoundation that was shared between Mac and iOS and had common elements. It would solve all this...

But Apple, even publicly, is pitching this as a repackaging process of existing iOS apps, not developing Mac first apps with UIKit.

Adam Swinden:

Although I want to believe Marzipan will kill Electron, I doubt it will. Electron isn’t used by iOS developers who don’t know how to make a Mac app. It’s used by web developers who don’t know how to make a Mac app.

Update (2018-06-08): Steve Troughton-Smith:

Developer/user question: what features or UI elements does a Mac app need to have to be considered a good platform citizen? i.e. in your opinion what specific things does UIKit/Marzipan need to grow to actually be viable for Mac apps?

Update (2018-06-11): Jean-Louis Gassée:

In the end, Apple’s UIKit port to macOS raises questions we can’t answer. iOS apps such as News, Stocks, and Home ported to macOS are nice, but, again, I don’t see a stampede of iOS apps crossing the bridge to macOS, not enough to move the Mac volume needle. This leaves us with two possibilities. Either the UIKit move is a titillating but unimportant sideshow, or it’s part of a larger hardware plan for the Mac.

See also: Pierre Lebeaupin.

Update (2018-06-11): Mike Rundle:

Apple getting rid of subpixel antialiasing in Mojave while also applying a non-integer scale to Marzipan UI elements is some kind of sick joke.

Update (2018-06-13): Lauren Goode:

In other words, Frankensoftware might seem like the wretched experiment of a bunch of FOMO-driven executives when you’re struggling to swipe, tap, or shout your way through an interaction with a new product. But from now on, most every connected thing you buy is going to have a little bit of something else in it. And once the companies making those things figure out a way to make these interactions effortless, it won’t seem like such a bad thing.

Update (2018-06-14): Guilherme Rambo:

Any questions about iOS apps on the Mac? Ask me.

Update (2018-06-18): Chris Adamson:

That’s something that makes me skeptical about the Marzipan dream. Developers who give a crap are already able to make this kind of thing work, and developers who don’t give a crap aren’t going to do it no matter how easy you make it.

Mark Hughes:

Marzipan (candy frosting) is a legacy porting technology: Existing iOS apps can cost more to port to AppKit than they’re worth, but may be worth something as a cheap Marzipan port. Nobody ports their iOS apps to tvOS or watchOS because it’s not profitable, and everyone (in the first world with money) has an iPhone already.

Update (2018-07-05): See also: Rob Fahrni.

Update (2018-07-11): See also: Accidental Tech Podcast.

Update (2018-09-03): Melbourne CocoaHeads:

New video from July 2018 - @argentumko presenting Mac OS Mojave Marzipan’s Internals.

Dave Nanian:

I know it’s not done, that it’s a really hard problem, and that it’s “handy” to have Home etc in Mojave, but it’s all just so wrong.

Remember how we all laughed and laughed at Microsoft because Windows 8 had “tablet” apps & “native”/old apps?

How is this better/different?

John Gruber:

These apps are not good. It’s that simple.

Update (2018-09-04): Andy Ihnatko:

It kind of pisses me off. Because these system apps are also supposed to show developers and users how good these kinds of apps can be. If Apple’s own engineers can’t hit this pitch, it’s a missed opportunity at best and a bad sign at worst.

Steve Troughton-Smith:

…but they are ‘good enough’, and better than the Mac missing out completely on a viable app-led future. Such is the story of Marzipan

Joseph Slinker:

They’re good enough to launch with, but they’re clearly not the final destination. Initially they’re going to be like every other platform Apple has done. The “defaults” will get developers 90% of the way, and the last 10% is what will make certain apps shine.

Bob Burrough:

“Insanely good enough!”

Kyle Howells:

I agree with the first half. I want UIKit to take over as the UI framework on Mac.

However, I don’t want iOS UI elements on the Mac!

I SERIOUSLY hope the current UIKit on Mac does not become the ‘new normal’. That’d be the start of the death of the Mac.

Steve Troughton-Smith:

The ‘start of the death of the Mac’ was ten years ago. This is the start of a new chapter of life for the Mac

Bob Burrough:

My position here is that Apple just needs to do an outstanding job. Devs are gonna do what devs are gonna do, but if Apple makes it easy to make crap, we’ll get lots of crap.

James O’Leary:

Apple, and the community, needs a definitive takedown on how we waited a decade for Mac-like apps on our iPads, and ended up with ugly iPad apps on undependable, neglected Macs.

Matt Birchler:

The current Mojave apps feel like I’m using the iOS Simulator. If all Mac apps were like this today I’d be a Windows person 100%.

Colin Cornaby:

The other thing that always seems to get missed is that the apps that Marzipan can bring to the Mac and the apps that are missing from the Mac are two different sets of apps.

Will Marzipan bring Windows only software to the Mac? No? Then what apps are we talking about?

“But Colin you’ll be able to run Yelp”

Yeah seems to be running just fine already.

Update (2018-09-06): Peter Steinberger:

Here’s the slides for my Hacking Marzipan talk + lots of links to learn more[…]