Once again, Apple strikes with their App Store. We have talked about their inconsistent acceptance and rejection of iPhone apps, leading to the instant deterioration of their image as the coolest phone’s manufacturer. Possibly it is just jealousy, like the way Linux users deride Microsoft, while building effigies of Bill Gates.
While the effigy comment was made up for dramatic effect, unfortunately the Apple image is really going down the drain. There is a complex process involved with making apps for the ubiquitous iPhone, and now they have just notched up the complexity. Personally, we feel if Apple keeps pushing the developers, chances are that disaster looms ahead menacingly.
Apple has a very clear stance on the iPhone, one where developers cannot implement the functions that make up the core of the phone. Essentially that means that while the phone may have certain functionality, apps are not allowed to exploit them to add texture to their applications. For this reason Apple has provided a framework, complete with powerful public APIs (Application Programming Interface) to developers. Developers can create applications that fall into the boundaries set by Apple, or the app is considered a violation of the user agreement.
It was the private APIs that are off limits entirely. There can be a number of reasons why this is the case: perhaps the major one being security or copyright issues. But the boundaries were clear – no applications that use private APIs.
Of course, developers have chafed at these restrictions from the beginning. But the grumbling was not all that serious, until Apple starting rejecting apps out of hand. There was always an approval process, mainly to check that apps kept their toes within the defined boundaries. However, apps that met all the criteria were still being rejected, while some of the apps that used private APIs got through the approval process.
The inconsistency continued for quite a while, and backfired terribly on them, as waves of discontent spread through the ranks of developers and surged onto the Internet. For months, every time Apple rejected an app or withdrew functionality (remember Emoji?), there was a furore and their street cred plummeted more.
Now Apple has introduced a mechanism to check whether apps use private APIs or not. While earlier, the approval was mainly manual, and feedback was forthcoming, this time the latest cog in the approval system is a program.
The program is called the static analysis tool. It checks the application code for private API calls, and rejects the app if they exist. The program adds an extra layer for application developers to crack through, and there is little point in appealing the rejection – as there is no sympathetic human being on the other side of the appeal.
One wonders whether apps that are currently approved will be treated to the software equivalent of a security wand. If they are, chances are that there will be a few that will be summarily dismissed. It is truly worrisome to think of the mess that will create.