Apple App Store ecosystem has been designed in a way to keep users protected from low-quality and malicious applications, and undoubtedly, it works well. But, sometimes an application gets rejected due to some unexpected reasons, and as a result, developers either have to push back launch dates or even have to redevelop key features.
It has never been an easy task to get started as an iOS game or app developer, here are 10 basic tips develop an application for iPhone.
Here we showcase 9 surprising reasons, which should be considered before uploading your application:
Use of the word “Beta” or any other identification for unfinished application
Google has already made it a mandatory industry practice to introduce the “Beta” version of their every application first. But, Apply seem to be a bit more serious about any indication that the application is incomplete or unfinished. Many applications just get rejected for being labelled “Beta,” “Preview,” and even “Version 0.9.”
Long Loading Time
All of the smartphone operating systems including iOS, Android, and even Windows have fixed a maximum limit for their application startup time. For iOS, Apple has fixed a maximum time of 15 seconds, and if your applications don’t start within this time period, then it will be killed by the operating system.
Even if your application takes less time for startup than the limit during local testing, certain factors like slower network connections, slower hardware, and other differences in the environment can affect the speed of your app during the review process.
So, we suggest you not to have blind faith on the iOS simulator alone, and make sure to test it on actual hardware. Always remember, that your app’s load time is your first opportunity to impress the users.
Linking to outside payment schemes
Apple demands to sell all the digital content via its inbuilt iTunes-based in-app purchasing mechanism. This results in digital subscriptions and one-time purchase as well, so, if your application accepts other payment mechanisms for digital content, there is no way to prevent it from getting rejected. This is the only reason that users are not allowed to purchase new e-books in Kindle app.
Notably, this rule is applicable even to the web pages linked from your application. The Dropbox was also rejected by the company because its login screen includes a link to buy additional space.
So, we suggest you make sure that all the purchasing goes through the user’s iTunes account, otherwise, your app will surely be removed from the store. Non-digital services or merchandise can be relaxed, as the rule is not applicable to them.
Do not mention other supported platforms
This is a common and very obvious rule, as none of the application marketplaces will like when the application mention the rival marketplace by name at their platform. So, if your app is also available on Android or Windows, you are only allowed to advertise the availability of your application via your website. Any advertisement of it on app or app store description will result in the rejection of it.
Your application will be available in every corner of the world, not just in the particular city or country, where the development was done. So, even if you have not localized your app for multiple languages, it will be a bit unprofessional if $300 will come out as YEN 300.00 for in-app purchases. You can check out add-ons like Invariant Culture or NSNumberFormatter along with a simulator to test the user experience at different places and to ensure that the dates and other data are relevant to the user’s location.
For example, many European applications were not capable of handling negative values for latitude and longitude, and as a result got rejected in review for Cupertino, which is situated at Longitude -122.03. You have to make sure that your application is running across the whole world and especially ensure that your lat/long math for groups of points span the positive/negative boundaries of the prime meridian and the equator.
Improper use of storage and filesystems
Just after the launching of iOS v5.1, the company rejected an application just because the developers had unscrambled the 2MB database from the app itself into the file system, which resulted in the violation of the iCloud idea of backing up only user-generated content.
Any type of data can be easily regenerated because of being static, can be shipped along with the application or can be easily downloaded again from a remote server, which will then not be able to be backed up. You have to use “do not backup” attribute or choose a cache storage location for non-user data.
Crashes from users denying permissions
Along with the iOS 6 launch, Apple announced that user has to allow applications to access their address book, photo gallery, location, calendar, reminders, Bluetooth, Twitter and Facebook accounts. If any user denies giving access to any of these services, then the company demands the app to work properly anyway.
This has to be tested during validation otherwise the app will be automatically rejected if it fails to work properly. The developers have to test all the combinations of “allow” and “deny” for every type of data your application uses.
Improper use of icons and buttons
Apple rejected many applications due to minor UI issues, which nothing had to do with its functionality or performance. You have to ensure that the built-in Apple icons and buttons are uniformly arranged and are working properly with the help of a standard UIButtonBarSystemItem and make yourself comfortable with the company’s Human Interface Guidelines.
For example, you will surely not want the “compose” icon to perform any other operation then referring to content creation. Apple is understandably strict about this and wants each and every app to behave in appropriate ways.
Misuse of trademarks and logos
You are not authorized to use any kind of trademarked material or Apple logos anywhere in your product images or in your application. We will also suggest you not to use the drawing of an iPhone or any trademarks in the keywords of the application.
So, we recommend you to study the submission guidelines carefully and keep focusing on building a high-quality application. Still, you do not have to panic if your app gets rejected, all you have to do is address the issue and resubmit. Moreover, the silicon valley based organization also offers an expedited review process that can be used for critical bug fixes or security issues.