Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Does apple view the actual source code when approving apps?

How exactly does apple approve apps? Is the actual source code viewed?

like image 275
some_id Avatar asked Jul 06 '10 13:07

some_id


People also ask

Are Apple apps vetted?

Apple vetted apps to meet the company's standards and security requirements, providing customers both convenience and peace of mind. Apple prioritized iOS security from the start, realizing that customers were more likely to buy iPhones and apps if they didn't have to worry about malware.

Does Apple manually review apps?

Ultimately, at Apple, all the apps are reviewed by actual Apple employees, and decisions do go all the way up the chain to Schiller, reviewers said.

How hard is it to get an app approved by Apple?

Typically, the App Store approval process takes anything between 1-4 weeks. But sometimes, it may take much longer than that. Be patient and await the verdict. In case you should get rejected, iTunes will also let you know the reasons for the same.

Does Apple allow open source apps?

Many Apple products and services are built on open source software. Explore some of the projects we lead and contribute to below. In addition to open source projects, Apple also publishes the open source code used in the company's own software such as macOS, iOS, Developer Tools, and X Server products.


2 Answers

While none of us have access to the internal review process (which appears to be continuously changing), there are a few things that can be said based on the responses that people have received.

First, Apple has no access to your source code, so they do not review that. You submit a binary as part of an application bundle, along with your other application resources.

They do, however, appear to scan your application's binary for certain symbols that indicate the use of private APIs. A number of applications started crashing after iPhone OS updates because they used these private APIs, so Apple has been cracking down on this.

There are plenty of applications on the store that have memory leaks or other performance issues. I know that I've submitted versions of my applications that had subtle leaks (since fixed) and had no problems with review. Therefore, it does not appear that they do any sort of performance testing or profiling.

The only place where a memory leak causes a problem doing review is when that memory leak gets so bad that the application crashes when the reviewer is testing it. If your application crashes at any point during the review process, it will be rejected.

Beyond that, they have a checklist of user interface elements that they check for proper usage of (no persistent selections on table view rows, etc.). If your application deviates significantly from the Human Interface Guidelines when using these standard UI elements, you may get rejected.

Apple is very careful about copyright, particularly with their own images and artwork, so you may run into trouble if you use copyrighted material improperly.

Most of the rejection reasons you will face are preventable by making your application stable and by following platform guidelines, but some are not. Certain classes of applications have been rejected due to their intended use, and again the classes of applications that are allowed on the store change on a regular basis. This can add frustration and uncertainty when dealing with the App Store, but the vast majority of application types will never run into problems (as can be seen in the diversity of applications currently available).

like image 54
Brad Larson Avatar answered Nov 08 '22 02:11

Brad Larson


try to use otool -L binary yourself and you can see immediately if a private API framework got used...

like image 20
user387184 Avatar answered Nov 08 '22 03:11

user387184