This is a follow-up to Part 1: Creating the app. Forgot to mention that the app was made for iPhone only and not an universal app. I did not want to grapple with sizing on the iPad and besides, we don’t usually carry around iPads during evangelism unlike our phones. This post will talk about the process of testing and submitting the app. The following is to the best of my memory – there were so many steps that I may miss out some or mix up the order. This post only documents my experience and is by no means a definitive guide. You can read up the App Distribution Guide for more details 😛
It was time to test the app outside of the Xcode Simulator, ie. on actual devices. One way was to install it manually and the other using TestFlight to invite beta testers, which I did not use. First, I had to register my iPhone 5S under the Developer Member Center > Certificates, Identifiers & Profiles > Devices. To do that, I had to get the device UDID (Unique Device Identifier), which was done by launching iTunes, connecting my phone, locating its information and clicking on the serial number to reveal the identifier. With regards to the Xcode project, I had to make sure my Apple developer account was selected under the project target (click on the topmost icon in the Project Navigator) > General > Identity > Team.
Next was to archive the app in order to install/distribute it. This was done in the Xcode project by choosing the Generic iOS Device under Product > Destination and then Product > Archive. The Archives organizer showed up and I selected the archive, clicked the Export button, selected “Save for Ad Hoc Deployment”, chose my team for the provisioning profile and selected “Export one app for all compatible devices” under Device Support. I did not use on-demand resources and hence unchecked “Include manifest for over-the-air installation” under the build options and finally clicked Export, which invoked Finder to show the .ipa file. I connected my phone to the MacBook and selected it under Window > Devices in the Xcode project. Clicked the Add button under Installed Apps, opened the generated .ipa file and voila, the app was on my phone!
It was an exciting moment when I saw the app on my phone. Even if the app does not get into the App Store, I could still use it on my phone 🙂 As my app was dead simple, I tested it only for a while before going on to its submission. After some fumbling, I signed in to iTunes Connect, went to “My Apps” and click the big + button to add my app. I proceeded to fill in the information under the “App Store” tab. I hit a snag when I keyed in “Wordless Book” for the app name in the “App Information” section – it was not available?? I searched the App Store on my phone and iPad but could not find any apps with the same name. I added the word “ToolKit” and it passed, so that was that. For the Bundle ID, I used the Bundle Identifier from the Xcode project. The Category portion took me a while – there was no Religion category. I saw that PocketSword, the Bible app which I use, was listed under Reference, and hence I used Reference for the primary category and Utilities for the secondary category. As for the Rating, I answered the questionnaire and got a rating of “Ages 4+”.
In the “Pricing and Availability” section, the app was set up to be a free app, available in all territories and available with no discount under the Volume Purchase Program. As for the Bitcode Auto-completion, I left “Don’t use bitcode auto-recompilation” unchecked. Next came the filling of the “iOS App” section, which took the longest. Took quite a while to create the screenshots for the various screen sizes. Took a screenshot on my phone for each of the 5 colours, transferred to the MacBook, opened Photoshop, cropped out the status bar and did up the various sizes. It was fortunate that the screenshots were single-coloured with no other UI, and so I could just resize and crop – I shuddered to think how it would be like for other apps, having to use the Simulator with different iPhone/iPad models and taking screenshots (only just realised that the Simulator has a screenshot function).
After filling in the rest of the fields such as Description, Keywords, App Icon and Version and clicking on the Save button multiple times, I tried to submit. I was alerted to a few errors like incomplete fields and the most important one of all, uploading the app under Build 😛 To do this, I opened up the Xcode project, went to Window > Organizer > Archives, selected the archive I created earlier on and clicked on the blue “Upload to App Store” button. It took quite a while, probably about half an hour? I kept checking the Activity tab in iTunes Connect which showed that the uploaded app was being processed. Finally, the processing was complete and I went back to the “iOS App” section and selected the uploaded app under Build. I chose “Automatically release this version” under Version Release and at last, the submission was complete!
As of this point, the app is still waiting for review. According to App Review Times, the average review time is 7 days, from the time the app is uploaded to “Waiting for Review”, “In Review” (read that this usually takes less than a day) and finally “Ready for Sale”. Read somewhere that there is currently a backlog and the “Waiting for Review” may take up to 14 days. Hopefully I will get good news by the time I come back from church camp next week – fingers crossed! Adhuc!
[UPDATE: 12 DEC 2015]
Received an email from Apple on 09 Dec stating that my app has been rejected. I guess my app was really too simple with no value, but nevertheless it was a good learning experience. Below is the App Review for my app. Adhuc!
2.12 - Apps that are not very useful, unique, are simply web sites bundled as Apps, or do not provide any lasting entertainment value may be rejected ￼ 2.12 Details We found that the usefulness of your app is limited by the minimal features it includes. Specifically, your app only includes five pages of color with no content. We've attached screenshot(s) for your reference. Next Steps We encourage you to review your app concept and incorporate different content and features that are in compliance with the App Store Review Guidelines. We understand that there are no hard and fast rules to define useful or entertaining, but Apple and Apple customers expect apps to provide a really great user experience. Apps should provide valuable utility or entertainment, draw people in by offering compelling capabilities or content, or enable people to do something they couldn't do before or in a way they couldn't do it before.