Every day the Internet pays lip service to the “apps” “yanked” by Apple . But what happens when something Apple does in the SDK shuts down an entire type of app, namely the camera apps that added interesting new functionality to the phone?
Apple has decided to strictly enforce their SDK guidelines with the release of 3.0, leaving potentially millions of iPhone users with applications that will not be compatible with iPhone OS 3.0. Maybe you are already aware of this, but I had not seen anything written on Techcrunch and thought it was compelling enough to bring to your attention.
Our company, Code Monkeys at Work, produces an application, Quick Shot. It’s a camera application, not unlike Night Camera. It has been live in the App Store since mid-Feb. When the 3.0 beta came out we updated it to be compatible and submitted it. Each time we submit an update to Quick Shot we cross our fingers, since we always get a different reviewer who takes issue with features/graphics/text that were already approved in earlier versions. Although this time when it got rejected it caught us by complete surprise.
We received this response from Apple,
“Unfortunately, there is no way to work around your rejection at this
time. You were rejected because UIImagePickerController has not been
Apple decided to stop approving applications/updates that used the UIImagePickerController. Like Night Camera and dozens of other camera apps we hide the UI components of the ImagePicker screen so that we can show our own UI for the camera. The major issue here is that if they do not allow us to update our application it will not be compatible with OS 3.0 and therefore Quick Shot is a ticking time bomb, along with dozens of other camera apps. Other camera apps, such as Night Camera, Darkroom, CameraKit, Camera Zoom, QuadCamera, ProCamera, CameraBag, Pano, Fast Tap Camera, Self-Portrait and many others are also using this method to create their own camera interface as well. This is not something that these apps just started doing. They had all been approved and had numerous updates approved while doing this.
This issue will effect millions of users who have downloaded camera applications that are unable to update their software to be compatible and are now ticking time bombs.
For the others apps who were able to slip their 3.0 compatible update through they will no longer be able to update their apps. Eventually they will fall in popularity. This will snuff out the once fledgling 3rd party camera app community on the iPhone.
We talked with him to figure out what this means for a small coding house like his
CG: Tell me about yourself?
My name is Jared Brown. Computer science major from Purdue U. Graduated in 04. Worked for a few companies out of college, including ChaCha.com (actually was employee #12) – Started my own consulting firm in mid-07 called CriticalPath, LLC. Started Code Monkeys at Work in Dec 08.
So what’s going on with camera apps and 3.0? What’s the issue?
Brown: Last year I messed around with the SDK with the goal of doing a camera app. I was really just trying to understand what would have to be done. I jumped into the iPhone app business back in Jan when I started a small company and contracted an iPhone developer to begin working on a camera application. At the time there were a handful of camera apps that had been approved and in the app store so we were encouraged.
We submitted our application at the end of Jan. It was called Quick Shot. It was short on features at the time but we wanted to submit it early before we spent too much time on the app and it was rejected. There was some back and forth with Apple, we had to change the app’s icon, but they ultimately approved it.
Basically what we do is call the UIImagePicker module. Then we walk through the node tree and hide specific elements and insert our own UI elements. This is really the only way to modify the UI and the reason we thought the app could get rejected.
This is how several other camera apps function as I mentioned in the email and as Stepcase has mentioned on their blog. So we were happily plugging away on development, releasing updates, building a user base when in late Apr we get a simple update rejected. The update fixed some little bug that was slowing down save times. We were used to having the app updates rejected over silly things that we had to work through.
But this time they cited the fact that we were using undocumented methods. Which we are in fact not calling any undocumented methods, we are just traversing the node tree, which is not documented.
This was prior to the requirement that all app update submissions be 3.0 compatible.
So we were still working on our 3.0 update. We finished up the 3.0 update and submitted hoping we’d get some other reviewer and the update would go through. Because we knew by then that if the app wasn’t 3.0 compatible it was subject to removal from the app store when 3.0 came out.
I also started looking for other developers who were getting a similar response from Apple at the time. That’s when I found through Stepcase’s blog that they were getting their updates rejected as well.
Night Camera seemed to have slipped their 3.0 compatibility through in late April, luckily, so they seem to be OK for now and aren’t saying anything. They are also doing things with Night Camera that clearly break the guidelines of the SDK, like access the camera roll directly for deletion of photos, etc. – so it was surprising on many levels that their update made it through
But to wrap this up, we’re not in a position where we have hundreds of thousands of users who are now realizing that Quick Shot and Quick Shot Lite no longer work when they upgrade to OS 3.0. This is effecting at least a dozen iPhone camera apps. And considering that I doubt Night Camera will be allowed to get any new updates approved, this easily effects a few million iPhone users.
So why your interest in camera apps? What is the benefit to the user?
Light Camera and Camera Zoom have both been #1 selling apps worldwide. For us it was an easy first app to do because your market is potentially every iPhone user. Everyone takes photos. We also felt that the built-in camera app was lackluster and left a lot of room for improvement.
Steady shot, digital zoom, image effects, and Facebook integration are a few of the features that we think make the experience better. I think that this sort of innovation is beneficial to both Apple and the users. If Apple had rejected apps like ours and Darkroom when they were first submitted we wouldn’t be here. But to let this group of applications thrive and then essentially end of life them once they have been downloaded by a large percentage of iPhone users in total brings up a lot of questions I think.
What can Apple do in this situation? What encourages this arbitrary behavior?
ddressing the first question. I was surprised that Apple didn’t facilitate these sort of applications SDK 2.0. This segment of apps was already thriving under SDK 1.0 and had produced a #1 app in the form of Night Camera, which perfectly demonstrated the innovation that could come out of 3rd party camera apps with their steady shot feature. So I think it was missed opportunity to not extend the SDK for these sorts of camera apps. If they are indeed planning on extending the SDK in the future, why not let these apps, which they already approved, continue to fly under the radar for the meantime?
We were all able to update our apps for 3.0. It’s curious to me that the new camera functionality is exclusive to the 3G S. It looks like at least for this iteration of the iPhone they are using an upgraded camera app to help move new units.
Apple has shown in the past that they choose not to yank apps away from users. Two examples: Users who downloaded NetShare, basically tethered your iPhone, were allowed to keep it even though it was yanked from the store.
If an app is found to be doing something wrong, usually Apple just makes you take that out in the updates, but they leave the current, offending version, in the app store and on iPhones
Well, I guess it’s arbitrary because we can always find contradictions. Somewhere, someone will be able to sneak a camera app past the censors.
No doubt. The app store approval process is frustrating due to that.
We have had our apps rejected for some weird reasons. Things that had been in the app for several versions.
Why still build for iPhone? Why not go to WebOS? It seems like a walled garden, right? It’s hard to get in and it’s hard to stay in.
I think everyone keeps fairly quiet and is accepting of the approval process because the iPhone’s scale dwarfs the other phones. Looking at reports on TC of the sales numbers for the 3G S, it’s ~20x more than the Pre. It’s absolutely a walled garden. But it’s one everyone is willing to jump through hoops to be in.
It’s really a frustrating experience working with Apple on the approval process, which is weird, because my other experiences with the company are so good. It’s hard to reconcile that it’s the same company.
Does this process make the market more valuable? The apps better?
I’ve thought about the process as a competitive advantage at times for sure. If I’m in the store and you want to compete with me, it’s going to take you a while to work with Apple to get in.
Does it make the apps better? I would say that the human interface guidelines that you have to adhere to, or atleast are supposed to, can make an app more user friendly. But it goes back to the arbitrary nature of the review process. Some reviewers might notice something that others don’t. Looking at the state of the apps in the store, in general, they’re nowhere near Apple’s personal standards. So I wouldn’t say the process makes better apps. It just protects Apple.
But then you get the situation you’re dealing with, right? Your app is knocked out and that was your bread and butter. It’s like a flea market where the market manager is very vicious.
I’m ultimately not in control of my company’s product and that’s a really big negative.
Luckily I’ve made money off of this and it’s just a hobby for me, but it could be worse.