Why is our software in the Apple App Store outdated?
It has been a long time since we last updated the software we have available for sale in the Apple App Store. People may wonder why the versions we have there are more than a year and an half old. There is an explanation for that, Apple rules.
Indeed, when you post a new application or an update to the App Store, Apple performs an in-depth review of your submission. If you pass all filters and match all Apple guidelines, your application will be available for sale, otherwise you will get it rejected and you will receive some kind of cryptic message about some weird issues that make your application unsuitable for the platform. Hopefully I am quite used of those error messages and I always manage to get the submitted application finally approved.
The reason why we stopped updating comes from Apple new requirements, especially Entitlements and Sandboxing. Apple says: "Application sandboxing restricts an application’s access to only system resources, including the file system, for which it’s explicitly given access. A sandboxed application is given a code signature to prevent tampering, and a list of system resources it’s allowed to access. This list of system resources is called its entitlements".
Sandboxing is a security technique that acts as a last line of defense against exploited, buggy, or otherwise compromised applications, which Apple is implementing to ensure programs distributed through the Mac App Store are as safe and secure as possible. In short, Sandboxing has been designed to contain damage to the system and the user's data if an app becomes compromised. Entitlements confer specific capabilities or security permissions to a given application. Sandboxing and Entitlements work together.
Apps distributed through the Mac App Store must adopt the App Sandbox and should include a list of Entitlements. As a result the application will run in a closed environment and will get access to the resources listed in the Entitlements.
What that means for us? Well, a sandboxed application doesn't save its preferences to the usual places and may be restricted to do given things. When the application is signed, we have to provide a list of privileges/permissions we want to be given and info to get previous versions data moved to the new location. If we are lucky, the software will work and the preferences will get transferred.
We have to work on this and try to go thru it. Not all developers have been successful and many applications have never been updated mainly because given features were not compatible either with Sandboxing or the Apple Entitlements. Others simply pulled all there applications from the App Store because of all those draconian restrictions: Bare Bones Software pulling next BBEdit from the Mac App Store
In addition Apple have added a new rule during the last WWDC, after June 2018 all 32bit applications will be removed and starting on January only 64bit submissions will be accepted. So we have no choice, update or die. Hopefully we are already working on 64bit versions: 64bits versions of maxprog products.
More information:
- App Store Review Guidelines
- App Sandboxing
- About Entitlements
—
Stan Busk - Software Engineer
at www.maxprog.com
Comments