How Apple's App Review Is Sabotaging the iPhone
snydeq writes to recommend Peter Wayner's inside look at the frustration iPhone developers face from Apple when attempting to distribute their apps through the iPhone App Store. Wayner's long piece is an extended analogy comparing Apple to the worst of Soviet-era bureaucracy. "Determined simply to dump an HTML version of his book into UIWebView and offer two versions through the App Store, Wayner endures four months of inexplicable silences, mixed messages, and almost whimsical rejections from Apple — the kind of frustration and uncertainty Wayner believes is fast transforming Apple's regulated marketplace into a hotbed of bottom-feeding mediocrity. 'Developers are afraid to risk serious development time on the platform as long as anonymous gatekeepers are able to delay projects by weeks and months with some seemingly random flick of a finger,' Wayner writes of his experience. 'It's one thing to delay a homebrew project like mine, but it's another thing to shut down a team of developers burning real cash. Apple should be worried when real programmers shrug off the rejections by saying, "It's just a hobby."'"
Apple's managed to get more than fifty thousand apps through the process and onto the store. Nobody's going to write stories about the ones that went smoothly.
-jcr
The only title of honor that a tyrant can grant is "Enemy of the State."
Only a billion downloads. What a disaster.
Apple is not interested in allowing you to control your own hardware. This is just another example among many. I hope this sort of thing makes the iPhone and other Apple crap die a painful death.
Long live Android!
Nintendo 2 on our hands! You know, from the NES days. Big N Loyalists unite...what were we talking about again?
Once you start despising the jerks, you become one.
No kidding. Most phones can run Java programs. Sun even lets you download the SDK for mobile development for free!
More than that, he is trying to create an app that is a book. This is something he could easily do by putting it on a web page, if he wants he could even limit distribution to only iPhones by using the User Agent string (ok, it's not perfect, but does it matter?), and to the average iPhone user it would be approximately the same.
By putting it in an app, he is gaining the benefit of the Apple distribution system, and he is even hoping he will make money by doing so. In fact, I doubt he would even have tried making the app if it weren't for that (has he released a blackberry version?). He is not benefiting users particularly with this app (that is basically a fancy text file), he is cluttering up the app store with a moderately lame application.
Which is fine, anyone should be able to write a moderately lame application, but Apple shouldn't be forced to distribute it for them. The bigger problem here is that Apple isn't letting anyone install apps on the phone in any way other than their distribution system. But once again, in this case it doesn't matter, because he wasn't trying to get on the phone, he was trying to get on the distribution system.
So this isn't just a non-issue for those of us who don't have iPhones, it is a non-issue for almost everyone except those who want free advertising from Apple.
Qxe4
I too have found this process annoying. Apples now ruling on UIWebView is ridiculous. I tried to work with them on not allowing any links to work, and they weren't happy enough with that, I still need to give it maximum rating.
But the most frustrating aspect is having no communication with customers. A customer spots a bug, leaves a review that is it. You can fix it, but there is no way to get in touch with that customer, or leave a reply saying you have fixed it. There is even no message that a customer has left a review, you have to trawl through all your apps for reviews every so often, or you will never find out about this.
It is a great system, I will keep producing apps because of this, but it certainly could be better.
Sidekicks -- They have a "marketplace too". Locked down. T-mobile phones. Locked down. AT&T phones. Locked down. Almost every phone in existance has a "market place" equivalent, which has an approval process. Suddenly the iPhone comes along and people were expecting sunshine and kittens?
#fuckbeta #iamslashdot #dicemustdie
Make sure you click on every story that doesn't involve you, and inform us of how it doesn't relate to you. I find that comments like yours really add to the discussion.
First they came for the "lame" apps that wanted to be distributed on the iPhone, but I didn't care because I didn't have and iPhone and/or trust Apple to filter apps for me. . .
Its easy to shrug your shoulders now, when you don't care about a particular functionality. Or if you happen to be the type that habitually runs their cash through Apple's distribution system to buy gimmicky apps that you only use once.
If you read deeper, you'll find the answers to some of your questions. First, the AppStore has proven to be worthless for driving any interest in my books. You can't even find the book by typing the name of the book into the search field. It doesn't help to add quotes around the name. You get other apps with odd names. Don't ask me what's going on.
Second, this isn't about free advertising. I paid Apple to be included in their dev program. You can't even submit free apps without paying.
There's been a healthy debate about the best ways to distribute books for the platform. I like many of the readers. They offer more features than I was able to hack together. But the readers add another layer between the author and the user. They deserve to be compensated. I'll probably experiment with them in the future too. But this was all about experimenting with the AppStore.
Finally, I did build an HTML version and it works reasonable well. You can find it here:
http://www.wayner.org/books/ffa/webkit/
But it has limitations too. The marked up version of the book is more than a megabyte. Anyone can read it on their iPhone by hitting this URL. But the caching isn't great and they may need to reload it. The performance is much better as a direct App.
In any case, I still think that iPhone users and iPhone developers should be able to find each other without waiting for Apple's clearly overburdened team to approve the interaction. That makes a good platform.
Make sure you click on every story that doesn't involve you, and inform us of how it doesn't relate to you. I find that comments like yours really add to the discussion.
Your response is not really an issue for those of us who are not Rival.
This message should be modded up to 5 insightful if recent trends are any indication.
This is not really an issue for those of us without iPhones.
You forgot about ipod touches.
Before you hit post, yes, this is still not an issue if you don't have an ipod touch or an iphone.
I find that comments like yours really add to the discussion
This issue is a bit more complicated than you think.
Let's count off the ways that the author is a dumbass:
If turds like this guy's app were allowed, the "too many apps" problem would be 100x worse, mostly with "MAKE MONEY FAST" (or the "Web 2.0" equivalent) versions of his idea.
I unlocked my phone within minutes of getting it home. I then proceded to take a look at the apps available via the Cydia store, which is unencumbered by the Apple review process.
Pretty much everything I tried was garbage with the developers doing just enough to get something ported and then abandoning it regardless of what kind of glaring bugs are in the system, yes the reveiw process is harsh but it does help maintain a minimum level of quality that is bettter than 99% of the apps in the cydia store.
(still, being able to get low level access to my phone still makes the jailbreak worthwhile)
What I meant was that you can also load your phone with Java apps without paying anyone (at least the phones I've owned thus far from AT&T are like that).
The difference is simple, Apple has FAR more developers than the XBox does.
This story is just someone else riding Apples success, sure its a gripe, but it wouldn't matter if they weren't doing so well in the first place.
Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
Look around. Palm and Symbian applications can be downloaded from many websites. Here's a website with more than 500 open source Palm apps:
http://www.palmopensource.com/
Microsoft works with a number of stores like Handango.
If the sandbox is good enough-- and it's not that hard to build a good one-- then any software should be downloadable.
Why would I as a developer put time and hard effort into developing software if I believed there was a good chance it would never even get the chance to be installed?
I sincerely understand both the frustration and the annoynance, but it is almost like the developers are seemingly sitting still and not doing anything while waiting for the approval? I am sure they must be having other stuff to do while waiting for the approval and if the issue is going to be ongoing I suggest their strategy change accordingly although I am not defending Apple here at all. Apple should perhaps change their tactics or at least make it easier for updates to get through (like bugfixes) and the developers should not bet everything on one horse either.
Once again, it's not a problem of Apple's app store, it's a problem of restrictive DRM that doesn't allow anything but approved apps onto the phone. I am quite alright if Apple doesn't allow lame apps into their store, but I won't buy an iPhone until it is opened up.
Qxe4
... this example is not necessarily the best way to publish electronic books. Wouldn't it be better to put the book (both editions) up on Amazon Kindle, and let people use the Kindle app for the iPhone?
Imagine the horror of having a 1,001 authors all packaging their books as separate apps...
Michel
Fedora Project Contribut
If the results of the review process resulted in less junk cluttering up the appstore than the delays would be more acceptable, but the things they allow are just bizzare. Do they really need almost 400 separate 'supafan' apps from the same developer where the only difference is which celebrity news is being tracked?
air and light and time and space
... available for the iPhone nvolve some sort of fee/subscription/paid srvice from a third party? In other words, other than services/fees involving Apple/AT&T?
Have gnu, will travel.
This has been how Apple has done business for years. How much more money could they make if they allowed OS X to be installed on any x86 PC? They do not because they like being in control. You do not purchase a Mac, or an Iphone, you purchase the experience, as regulated by Apple. Right or wrong, this business model is along the path they chose long ago so I doubt that they will change much now. If, as a developer, you do not want to play by their rules, then you can take your software elsewhere. Just as it is their right to do this, it is also your right not to develop for their platform.
I cut it three times, and it's still too short.
That's your phone provider's fault. I've got an iPhone and I love it. I have wasted so much time with it. Trism, Peggle (great control!), and Flight Control have taken large chunks of my life.
Both my siblings have Palm Pres. I've played with them, and they're quite nice. My only complains were the build quality (would like it a little tighter) and navigation (you have to know the gestures, they're not discoverable). The card metaphor is very good.
But the app store is empty. There are three games, one of which is... connect 4.
The SDK was just released to the public, in beta. It's not meant for games, it's barely more advanced than the first way to develop for the iPhone (which was so roundly criticized). You can't get accelerometer data faster than 4 samples/sec. Palm is supposed to be making a gaming framework, but who knows how long that will be.
So right now Palm is taking submissions for their app store, which will only be able to handle non-demanding games (no Katamari Damacy there), for it's fall opening. Even if your game is done, no one will be able to buy it for months.
Basically, the Pre will be devoid of good apps for at least the next 6 months. The situation is really sad. They messed it up, big time. The SDK, even in alpha, should have been available months ago, so there would be apps at launch.
Windows Mobile has tons of apps, and a tradition of tiny little utilities costing $20. Combine that with the fragmentation of device capabilities and the market is... rough for a consumer.
Blackberries? I've heard that to develop anything on them that doesn't look like a 1996 Java applet requires you to basically do the painting for every widget on screen. There is device fragmentation here too. The app store it's self is a joke, it's very difficult to use. There is no way to browse it from a computer, which makes using it a nightmare.
Apple proved good apps were a "killer app". No one really "got" the importance of them before the iPhone's native SDK came out. Unfortunately, after more than a year, no one else is even close to being able to foster any kind of app ecosystem. Palm should have, but botched it.
I'm not really sure about the G1. I'm guessing it's sales are just too small for it to reach any kind of critical mass soon (where the Pre has a chance and Blackberries are there).
Comment forecast: Bits of genius surrounded by a sea of mediocrity.
then why bother with an iPhone at all?
the good ground has been paved over by suicidal maniacs
It's a lot different in the fact you don't need to be a large company and spend thousands of dollars on special developer units, and licenses, and software to do the developing. Apple has a one time cost of $100 to anyone, all you need is a Mac, which are sadly cheaper than an Xbox dev unit. (I don't know about Wii's, but the process is the same.) And, the development SDK is free for anyone. Verizon's process is, you have to spend about $500 on a certificate from Verisign, you have to be a big enough company to convince Qualcomm to give you testing rights on your phone (which you also have to buy several different ones to test on) and then Verizon might review your application. The BREW application development process is terrible.
What if the subject of the discussion is the reason why it doesn't relate to me? i.e., what if the poorly-conceived App store is the main reason stopping someone from getting an iPhone?
"Our two-party system is like a bowl of shit looking at itself in a mirror." - Lewis Black
Was the html in his "Application" as bad as what was on that site? Why did I keep seeing the line ""? If I was apple, I'd reject an App that was just a piece of bad html too.
Anyone saying "it's just a hobby" either doesn't understand what a hobby is or what "just" means. If people actually have a hobby it's going to be very very important to them. Anyhow, I wonder how many people would accept / defend a Microsoft app store that was there to ensure no kiddy porn or trojan could be loaded on your Windows PC.
___
No power in the 'verse can stop me
Sure it's to drive interest in the book and maybe even raise some money for charity.
And yes, the Blackberry is on the list. But after all of this grief, I've been aiming more to build webapps that work with webkit.
The URL I've posted should work with some of the newer Blackberry handhelds. I just don't own one so I haven't tried it.
And it should also work with Android and also the Palm Pre if they did a good job with their webkit.
Some of the gestures can be found in Palm's user manual that isn't included with the device, but has to be downloaded. It's easier to grab the 'tricks and tips' document from precentral along with whatever homebrew applications that people have already made. I don't mind not having 'demanding games' for the device and have no problems with the build quality.
the good ground has been paved over by suicidal maniacs
there doesn't appear to be a lack of those applications for the iPhone.
the good ground has been paved over by suicidal maniacs
Have you considered going through one of the online sites that are supported by Stanza and/or other ebook readers that are already available on the iPhone/iTouch platform?
Personally I think the idea of having a seperate app on my springboard for each book is stupid and regardless of any level of interest on part for your book, if that's how you want to sell it, I won't buy it that way anyhow.
Yes, I did consider that and I may still follow that route in the future. But I like to experiment with new platforms and the iPhone has been one of the shiniest ones around. So I wanted to code it myself.
While I can see why you wouldn't want another app cluttering the springboard, I don't mind it. I picked up a number of books from other devs and liked the experience. So I figured I would go ahead.
Also, you'll notice, for instance, that the book has been available from SiSU archive for some time. http://www.wayner.org/node/5 So that's sort of a solved problem. :-) Not that it can't be revisited.
So, a guy with mediocre programming skills and even worse writing skills gets his app-that's-really-just-a-book rejected and this means the iPhone is doomed?
I hear a lot about the app reviewers being jerks and very little about how the rejected apps in these stories aren't the least bit compelling. There may be worse already in the App Store but that doesn't mean all the crap must go in. And it certainly shouldn't make anyone sell their stock in AAPL.
I actually found my experience with the app process much better. Perhaps I got lucky since I'm not a big development house.
My first application was rejected within a week due to a crash in a certain situation I hadn't caught previously (I should know better than to assume the debug build would act like a release build). Obviously, they go through each of the screens and check the functionality. However, I had expected one of the "nonsensical" reasons I've heard of or the extremely long review process.
I was surprised that the reviewer put in what the error was and how to reproduce it. I reproduced the error and ultimately resolved. Next submission was accepted after about a week or so as well.
Based on this experience, I really worked hard to anticipate issues with my next application before submitting. Made it in ten or so days in one pass. Both applications are rather benign without anything controversial which probably played into this.
I feel fortunate that they made it through relatively easy. I hope the game I'm developing goes as well. The oblig plug -- GMToolKit (RPG helper) and FW Calendar (Calendar with fiscal weeks displayed) are the applications.
I love the sound of distortion in the morning -- webcommando
He's pointing out that we are not forced into buying an iPhone. DRM that we don't buy cannot lock us in.
I know they are documented, and well documented. I was able to use Help to find out everything I needed (unlike on a Blackberry where the help wasn't very useful). But people can pick up an iPhone and start using it. Want to switch apps? Press the only button. Need to dismiss an app on the Palm? You have to use a gesture. It makes sense, but you have to discover it. Want to get to the app list on an iPhone? Use the one button. Want to do it on the Pre? Again, a gesture.
Once you know a few little gestures, it works very well. Still miles ahead of Blackberries. I can't want to see people expand/improve on the card metaphor.
As for build quality, it was pretty good but the ability to rotate the screen a few degrees relative to the keyboard made it feel less solid that it probably is.
I mention demanding games because games seems to be one of the things on the iPhone that has REALLY taken off. Slower games should work (SuDoKu, crosswords, possibly even something like Trism). I just have trouble understanding how, after seeing Apple's success in games and apps, they release a phone trumpeting an app store that won't have apps for 3-6 months. It's odd.
A nice phone though. If I was still on Sprint, I would use one in a heartbeat over everything else. If the iPhone didn't exist, I would almost certainly switch to Sprint to get one.
Various Mac programmers/bloggers have got it right. It's a great phone, and very strong competition to the 2007 iPhone situation. Unfortunately, it's competing with the 2009 iPhone situation. It will be interesting to see how far they've taken it by this time next year.
Comment forecast: Bits of genius surrounded by a sea of mediocrity.
Or maybe there are about 2000 other apps in line ahead of them?
Why bother
I thought about this before working on the project and I saw that many other apps were distributing single books. After I tested some of the free ones, I decided that it wasn't a bad system at all. Sure, it added another icon, but I could live with that. When I was done with the book, I was going to delete it anyways to make room for others.
I can understand why you might want a different solution, but it boils down to a question of menu branching. Some people like a shallow tree with many options. Others want a deeper one. So it's a question of taste.
Depends, if you don't have a data plan I think though you still have to pay. I have a generic Samsung Propel (a767) and despite making a Java application that works just fine on the Java mobile emulators, I still can't get it to run on my phone when on a Micro SD card.
Taxation is legalized theft, no more, no less.
It could be that it is using undocumented or not allowed api calls? A good majority of these
camera apps violate apple rules so it should not come as a real surprise.
Got Code?
Most phones can run Java programs. Sun even lets you download the SDK for mobile development for free!
Unless the only network that provides decent coverage where you live locks out Java. Or unless you don't want a monthly phone bill but instead a phoneless PDA like an iPAQ or an iPod Touch. What phoneless PDA would you recommend for running Java programs?
Apple's customers are not the app developers. Apple's customers are the iPhone users. So long as there are users waiting in line with money to spend, there will be app developers competing for that money, no matter how arduous the review process may be.
This will only change when a competitor such as Android offers better apps or better selection than what the Apple store carries. This could happen, but it will take quite some time due to Apple's head start.
Nothing wrong with a little sarcastic remark now and then.. You see, there are hundreds of other types of phones out there.. and they don't have this particular problem. Perhaps it is fair to poke a little fun now and then, when every little bitch moan and gripe about a phone has to be reported as news (real interesting at that).. I have authority to forgive him for his comment, because I spoke to someone who has touched an i-phone.. so I am blessed.
waiting for ad.doubleclick.net
You go with the ones who want faux school shootings. Why? Because it's a proven strategy: specifically a strategy of not getting in between people and the things people want, particularly when they're paying you for those things. It's like having a bouncer out at the loading dock, trying to break the nose of the guy delivering the stuff you want to stock your store with.
Apple is trying to be omnipotent, which is impossible, but in no sense is it a bind. It's just hubris. They can choose to "unbind" at any time and let people develop applications for their platform without a gatekeeper.
It's rare that you're presented with a knob whose only two positions are Make History and Flee Your Glorious Destiny.
is your APP pure HTML, or does it contain JavaScript code like the PhoneGap project uses?
If it contains JavaScript code, maybe Apple didn't like the way it was designed as it was similar to the old PhoneGap code they rejected, did you update your JavaScript code to the new PhoneGap codebase that was approved, or did you remove the old PhoneGap code with different JavaScript code?
If your APP is HTML with JavaScript, Apple might have an issue with that. Sometimes JavaScript code can do nonstandard things that locks up a web browser or causes incompatibility issues. When I programmed in JavaScript I had to keep changing my code to changing Web browser standards, as soon as a new web browser was released, the way JavaScript worked would change and I had to change my code to accommodate it.
If it is pure HTML, there might be tags you are using that Apple finds non-standard and thinks they might run exploited code.
Here is a story on why Apple rejected the PhoneGap framework in the first place.
Yeah I know, Apple wants to protect their users and set quality control standards high, and they include such rules as not using third party or open source frameworks, and Apple does not want the APP modified on the iPhone after being bought, Apple does not want the APP to run on a competitor's phone (HTML and JavaScript applications can easily be ported to another format), and PhoneGap type applications may not work on future iPhones, it is all a matter of risk management. Apple does not want to risk anything so it sets strict guidelines on what an iPhone APP can and cannot do.
Yeah ironically Apple has exchanged freedom for security, and in doing so shut out developers like yourself. Even something as simple as HTML code and/or JavaScript has to be reviewed and has a possibility of being rejected. It goes against the open source philosophy, I don't know what else to say. Even Microsoft is not that strict on what can and cannot be done on their smart phones or Windows OS. Except to say that Microsoft's products are more prone to exploits and viruses and other malware, and maybe Apple is doing this kind of thing to prevent exploits in their iPhone?
Remember, Slashdot does not have a -1 disagree moderation, and no, troll, flamebait, and overrated are not substitutes.
After all, if you are just some guy messing around, maybe you decide to buy the SDK and release your apps. If they reject them, no big deal, you are just doing it for fun, or to learn, or to help people out, whatever.
The same can't be said for a development studio. If you decide that you are going to commit resources to making an app, you are likely to want a guarantee that it can be released. You'd be real pissed to spend money training programmers on the iPhone SDK, and then many man hours developing an app, only to have it banned. Thus maybe you say "Nah, not worth the risk, let's not move in to the iPhone market yet."
Now clearly some big developers have gotten on board, EA would be one, but perhaps others would do so, but are worried because of the potential for arbitrary rejection.
You are completely correct that just because it hasn't failed, doesn't mean it couldn't be better. Also, at this point it is too early to say "Yes the iPhone app store is a success." Reason is that you will likely see responses from other companies. When those come out, that'll be the telling factor. If iPhone and app sales are strong, then you know Apple has succeeded. However if they start falling off as competitors offer similar functionality, then it is a failure over all, despite doing well early on.
We are only just beginning the real mobile apps war.
I don't understand why they don't allow people to add free applications to the existing ones that they have now. OK..so, they haven't nailed down how they're going to do paid apps. Big deal. Let people put free ones on their download site for those that don't want to mess around with the SDK. I've also never understood the urge to start twisting on the screen either. "hey, my screen doesn't oreo......oh..now it does"
the good ground has been paved over by suicidal maniacs
I know XCode is great, mini OS X is great but there is no reason to prison yourself to a single device from a single company with a single app store.
Look to Nokia 5800 at least or that touch thing from Blackberry. Release same application on them. It is amazing that people ignores these devices which sold millions especially Nokia ones since clearly Symbian Foundation will be a huge thing, more huge than you can imagine right now. We are speaking about a dirt cheap OS coming with a UI library already in use by thousands of apps and an entire Desktop environment itself named "Qt".
It is like shooting TV series with Fox in mind and begging them to air it, without any kind of promise. You could say to them "Look Fox, NBC is already calling us, what is your decision?".
For example, Skype managed to make entire Symbian community hate them by promising a S60 version for years and never releasing it except some joke like version on some British cell provider not allowing calls on 3G or Wifi. They made Fring the de facto standard for Skype calls and Fring doesn`t even bother with their official SDK. Now, if Apple decides Skype is bad for iPhone and reject their new version, they will sure whine. It would be way better if they had a working S60 version in use on millions of Symbian handsets. That guy rejecting app would think twice since Nokia owners would say "get a real smart phone" to iPhone owners. Skype could have an example in hand and they could even use it to force Apple to allow some features. For example, Video calling over IP solutions already started to appear in Symbian market, good luck making Apple allowing such thing on app store.
The rich get richer. Browsing the App Store, you see the most popular apps at the top. There is no power search for apps with the highest user ratings. I really can't find what I'm looking for.
New app developers start at the bottom and have to compete against popular apps already ingrained at the top.
I'm writing for an App Review site right now that hopes to help alleviate that.
http://blindscribblings.com - Tasty pop-culture in conceptual fashion.
Want to run more than one app at a time on the iPhone? Oh wait.
There are generally two polarized camps:
1. Apple is too restrictive
2. It's Apple's game, it's a damned good game, and if you don't want to play it, then go home!
Both camps have some valid points and the biggest problem is that the second camp effectively refuses to see the validity of the first camp. The first camp's complaints have nothing to do with the [defensive] position of the second camp. In fact, you can both love and admire the iPhone and still think that Apple is a bunch of jerks with Nazi policies.
But it is such a repetitive and pointless cycle. Neither side will convince anyone of the other side to see it their way.
Personally, I am in the first camp. I won't voluntarily buy an iPhone until someone sets up a jail-broken app store from which to distribute the apps Apple doesn't approve of. And frankly, there are many phones that are LOTS better than the iPhone so it's a moot point really. Still -- let people complain and maybe one day Apple will listen... I have no reason to believe they will. Apple is more stubborn than Apple's fans are.
WinMo requires you to pay $0. Palm requires you to pay $0. Xbox 360 development requires you to pay the price of the device (MUCH MUCH MUCH less than an iPhone and Mac to dev with) and $50 (and nothing for development tools). You're full of shit. Apple has one of the worst developer programs out there, and most serious developers don't even consider writing apps for the iPhone because of how shit Apple's tools and fees really are. It's not worth having Apple arbitrarily reject your app if you're a developer that actually makes a living off his/her work, which most people making "iFart" for the iPhone aren't.
Apple has an *annual* fee of $100 to anyone, not a one time cost. You pay your $100 each year to continue to be part of the dev program. Myself and several devs I know have just past our one year anniversary and have had to pony up next years $100 fee.
DaveyJJ
One of the reasons for that is thought to be that it was hard to come up with a good interface for managing multiple open applications on a handheld device. The Pre seems to have a good idea there.
The other reason, and probably the bigger, is battery life. Ars Technica seems to agree with me.
I don't really find it to be a problem, it's been rare it annoyed me. Still, I'd rather have this limitation than the problem that Blackberry / WinMo / Palm users can face and have to constantly think about if I want to quit an application or switch out of it for battery life purposes.
It's a trade off, and right now I think Apple is on the right side of it.
Comment forecast: Bits of genius surrounded by a sea of mediocrity.
That's a suspicious number... Clearly Apple must be rejecting so many iPhone apps because the App Store database can only hold 65,536 apps!
Thanks for the reply. Both options certainly are valid, and it's not as if Apple has a clear-cut policy w.r.t. ebooks on the App Store (though Jobs is known to have a rather bizarrely dismissive attitude towards reading). I guess it boils down to two separate issues: usability, and ease-to-publish.
Usability-wise, for light reading having individual book "apps" might save time. Then again, for heavy readers, or for readers who like organizing their book collection (sort by author name, sort by title, by year etc.) individual apps can't cut it. Also, different ebook apps will inevitably have different interfaces.
This ties it to the second point. As long as Apple acts as a gatekeeper, and with its current byzantine approval process, any bugfix, as you pointed out in the article, cannot be pushed in a timely manner. Worse -- say you have n books, all prepared in the same way. You'd have to push n updates, all of them might have to be resubmitted if they get rejected!
Both suggests that, while yes, Apple's App Store poses commercial risks (wasn't there a commercially-developed emulator that got rejected too), it might not be an effective conduit for books anyway. Between Stanza (for free books) and Kindle (for paid books), there are ways to publish digitally without running afoul of the censors.
Michel
Fedora Project Contribut
Any lawful device: 40 years after the Carterfone decision - Forty years ago today the Federal Communications Commission started a revolution by standing up to AT&T. Without it, we wouldn't get to buy our set-top boxes or a wireless broadband network where we will be able to attach any lawful device and use any lawful application.
It's a fucking Ebook. Why the hell do you need javascript?
From what others have been pointing out you've been trying to do something naughty or odd and you're getting called out on it. You just won't admit that you're at fault and would rather just take the shot at Apple.
I certainly rather enjoy that you make note to call out Apple for their vague reasons for denying your application, but yet you have not been very open exactly as to what has been rejected. You could very well post the source code to your application if you were this desperate to call Apple out, but you won't, because chances are someone, somewhere, will call bullshit on you. The fact is, that Apple is vague because they might not have all of the source available--but you do. And you are the only one that can change what you're doing, not them.
...if you buy a plot in a walled garden, don't be upset that the gardener is fussy what people can plant in it.
I honestly don't understand why anyone is surprised by this. How exactly did you think Apple was going to behave? Are there other situations where a big bureaucracy has to approve something based on its own changing, arbitrary, vague guidelines that have worked out well?
Advice: on VPS providers
i cant really say im suprised at apples attitude. this same sort of control freak mentality over the hardware and the software is what made them lose out to ibm/msdos back in the day.
Recent blog post on the ins and outs of what has recently been enabled in the latest iPhone browser. Summary: close, but no cigar yet - until photo upload is supported, no-go. And of course, the app store handles the payment!
One developer whining about his rejection. Shouldn't this have been posted to a blog, or something? Did I miss the memo where /. was turned into YouBlog?
Assorted stuff I do sometimes: Lemuria.org
Yes, but you don't have the marketplace that Apple gives you. You get an amazing set of tools, and an established market place with a huge base of people who aren't afraid to buy stuff. Apple makes it very easy for developers and consumers, something that nobody figured out before then.
And you can get anything you want on the iphone, you just need to jailbreak, as many people have done. Sure, it is a pain in the ass, but so is getting stuff on those devices. (except for windows mobile).
I remember reading that WebOS included a Palm OS emulator, but no one seems to mention it in reviews. Did I misunderstand? It seems like Palm should be heavily pushing the fact that there is a huge catalog of Palm OS PDA apps. I assume this would still leave the Palm Pre far behind the iPhone in application support due to modern smart phone applications probably making heavy use of internet access, but it would still cover a lot, especially in the category of games.
Centralization breaks the internet.
After many years in the software industry, one of the more obvious things I have learned is to write applications to be portable so that you can take advantage of opportunities to support different platforms. This is one of the ways a smart developer can earn back the time and money invested in an application. A number of my clients have had their software chosen to be ported onto a new platform for its rollout. For the people that know Mac programming already, handling the iPhone may not be that big a leap. Simply put, an iPhone app written with Apple's tools is not going to port easily to any other platform. If the apps could be written in Java, developers could leverage the ubiquitous Java environment to provide the desired portability. Apple decided not to support Java on the iPhone. That means that by design, they want developers to lock their applications to the iPhone environment. This means that if you write an iPhone application and Apple decides not to allow it in the App Store, you will not be able to port your software to an alternate platform without a total re-write. I decided not to play "Engineering Poker" with Apple as I cannot afford to invest enough time writing a quality application when it is a roll of the dice whether it will be accepted, updates may not be accepted and users might blame me, and the user's are Apple's clients and not mine. I just don't feel the love from Apple that platform vendors used to show for their developers, who are in a sense, their partners. Microsoft and Apple both look an their developers as customers instead of channel partners, and they are ignoring synergy that has made others wealthy in the past.
Wayner's long piece is an extended analogy comparing Apple to the worst of Soviet-era bureaucracy.
Ah, classic kdawson. Your hyperbole is truly without peer.
"What kind of music do pirates listen to?" -Paul Maud'dib
"Yeeeaaarrrrr n' Bee!!" -Stilgar, Leader of Sietch Tabr
Wouldn't that be more like a 'lukewarmbed'?
You are not a brain: http://books.google.com/books?id=2oV61CeDx-YC
I thought this guy's name seemed familiar: http://ask.slashdot.org/article.pl?sid=09/05/14/2037236
Maybe it's just me and my experiences in real life, but this guy reminds me of a doctor. Smart, capable of doing complex stuff... but always convinced that he's in the right, and that he should always get his way. If he doesn't get his way, that... that's... that's just unacceptable!!
I don't mean to troll, and I don't mean to insult beyond what anyone deserves. But I just want to point out that we have a *very* one-sided view of the situation. From reading his stuff it seems like he is in the right (and I agree with some things he says), but I can't help but think that there just *might* be some bias in a story told by the protagonist with mild hyperbole. If it happens twice, I'm doubly suspicious.
Again, I agree with some things he says. And again, maybe this is a symptom of me and the people I work with. But it seems to me that he complains a lot, is self-centered, and thinks he knows everything (but doesn't). No offense, Peter, but that's how you're rubbing me.
Say what you will about these words - I can be hypocritical at times.
by using a UIWebView you realize that the content sits outside , and apple has to scrutinize that content , and if that content has javascript or even html , technically they are both code you are interpreting.
This is the same author once again using slashdot to advertise one of his books, by blaming someone else for destroying it. First he was whining that pirates were sharing his book on the internet (dubious at best that very many were even interested in downloading it in the first place); now he's whining that Apple won't distribute his book in a cheesy UI software that he wrote without following Apple's guidelines (software that appears useless for anything other than reading his book). Forgive me for thinking it looks an awful lot like he intentionally violated Apple's rules to get the software rejected from the App store so he could use slashdot to plug a book about free software that's almost a decade old -- something people otherwise probably wouldn't go looking for on the App store in the first place.
By the way, according to this page, the book is already available for free on the App store. Is there a compelling reason the store should have copies of this book in two different display formats?
a lot of these responses assume it's just TOS violations but they reject apps for many other reasons. i am a professional artist and i have made a bunch of very simple websites as part of my art practice - a domain with a simple image or animation. i made an art app for the iphone along these lines.... apple rejected it outright because it was too "minimal" for their tastes. this frustrates me to no ends... who are they to say what my art should be? that my work needs to be complex. clearly this has made me less keen on it as a platform, and many of my artfriends are second-guessing making apps. another example - an app i developed for a client - needed rating because there's a video of someone saying "girl, you looking good". this is apple's notion of what mature content is. they're pretty over the top, they make tipper gore look like g.g. allin. what makes matters worse - it took them FOUR WEEKS to tell us this. and we have adjusted the rating and have now waited another TWO WEEKS and they haven't reviewed it again yet. this is crippling to a business. this is not internet time, this is boat-trip-across-the-atlantic time. very frustrating.
The only Java app that I can get to launch on my Sony Ericsson P910 is Opera. Most Java phone apps are only written for the Nokia phones and rarely work elsewhere.
Java = write once, debug everywhere.
I know that the discussion is based around the "official" app stores, but because of the Pre's open nature there's a huge homebrew app scene. And while it may not be able to support a great gaming framework (yet), I've heard of really cool projects like a Doom emulator and others. The app store for the Pre may be limited now, but already the homebrew scene is looking healthy and has a lot of great offerings.
My guess is that some applications were allowed only because the people reviewing the code didn't have a clue as to what it actually does, or how bad it actually is from an attack perspective.
I concur. As i've mentioned elsewhere in this discussion, Apple did make mistakes, but their mistake wasn't in rejecting the app in question, it was in approving other apps that use the PhoneGap.
-jcr
The only title of honor that a tyrant can grant is "Enemy of the State."
And if I as someone who owns a device want to run an app that I know "chews through battery" and/or "leaks memory like a sieve", but I don't care because I only have to run it for a few minutes per day, should that not be my right as a consumer?
I honestly don't get why people constantly defend apple in regards to this. As long as all development is closed off in a "walled garden" I will never buy an iPhone.
Google has it right with Android. A "walled garden" in the app store, *BUT ALSO RETAIN THE ABILITY TO INSTALL MANUALLY* for apps that are not allowed to be sold in the store.
How would you like anyone to be able to add code to the mainline kernel without a review process? The iphone without
a application review process is just as vulnerable to bad code as the kernel. Some idiot fires off a malloc loop in a app
and crashes the phone, not exactly the user experience anyone wishes to promote. Yes the review process is painful but
a necessary evil.
Got Code?
win32 itunes bugs persist, proof they dont listen, and their stupid ass errors are worse than amiga guru codes.
Liberty freedom are no1, not dicks in suits.
Sounds like the other article re coin flipping random walking qantum story.
OTOH, maybe you just got dealt with some idiot reviewer on contact whos contract wont be reviewed, who knows...
Release a jail break version under a different name?
Liberty freedom are no1, not dicks in suits.
Your point about the updates is well-taken. If I were to put out a big stream of books, I would think carefully about the best way to approach it. It's important to remember that this was as much an experiment in a new platform as a way to republish a book.
Of course it's ironic to say that Kindle is a solution for publishing without censors. I can understand how Amazon got into trouble with the rights to 1984 but that doesn't make the platform any more stable or censor-free. It just means that there are two layers and thus two gatekeepers. I would be surprised if Apple shut down the Kindle or Stanza readers, but it's possible.
Then there's the price. Both the Kindle and Stanza developers want their cut. I haven't priced their options. Perhaps they're cheaper than Amazon's 30%. But I've heard numbers that are much worse.
Also, if I remember correctly, neither the Kindle or the Stanza reader was available when I started this experiment. Things have certainly changed.
Well, I never activated any online mode and that's pretty obvious from my HTML. It's actually easier for them to check than binary code.
You're absolutely right about things that can happen in online mode, but again I fail to see why that's either (1) much of a problem or (2) against Apple's regulations. They ship Safari, after all.
Section 3.3.1 states
No interpreted code may be downloaded or used in an Application except for code that is interpreted and run by Apple's Documented APIs and built-in interpreter(s)."
Isn't UIWebView a documented part of the API? And didn't Apple write the Javascript interpreter?
Please mod up. Best summary of why PhoneGap isn't allowed.
Wait to after the break and we'll tell you about the potentially dangerous substance, that's sure to be in your house, and even in your children's bath water. Hydrogen Dioxide and what it means to your family. Also, find out how the apple store, only launched a year ago will fail due to a author's trouble publishing a custom ebook. Later, we'll have an interview with Chicken Little and hear of his latest dire warnings. (appologies to Anderson Cooper, and many, many others)
The force that blew the Big Bang continues to accelerate.
so you can't run your code on your iPhone without ponying up.
Well that's useful. Apple - it "Just Works".
I've had no problems running a range of Java apps downloaded from various places on my Motorola V980. It just works.
I've been thinking about this a bit more. These dangers sound scary, but aren't they an even bigger problem for native apps? Certainly DNS poisoning could affect Yelp, Urbanspoon or any native app that goes to a server looking for data. And those servers could also replace any of those reviews with something lurid or unfortunate. They could change the behavior of the app after the fact very easily.
And aren't these dangers a real problem for the ad networks because the ad networks always change the content after the app ships. They have to.
At least PhoneGap would dump any new HTML in the UIWebView sandbox where it would be a bit safer. No one knows what the native code is doing. Doesn't this sound like PhoneGap is actually safer and easier for Apple to police?
Windows Mobile has tons of apps, and a tradition of tiny little utilities costing $20.
Yeah, and the Iphone App store has classics such as paying to display an animated graphic.
You also ignore the billions of phones out there that can happily download using the common standard of Java. There's no need for a central app store. Yes, Java obviously doesn't have the flexibility of a native app, but for the vast majority of rubbish that people are getting excited over on these app stores, it can do the job (I mean, it can do things like a web browser or Google Maps, which I'd imagine are far more advanced that most of these "apps" on these stores). Also, many phones have traditionally offered applications via the networks, not the manufactureres, so again a comparison of what other phone OS makers have is flawed.
I'm considering a new software development business and am seriously thinking not to use iPhone due to the business risk being discussed here.
Also regarding business purchases, I have long been an Apple fan even when Apple has screwed its customers over and over, I moved to linux and then to windows if you can imagine that. I'm about ready to move back to Mac, or at least Parallels on Macbook, but this iPhone stuff is bugging me. Maybe I can do without? I am thinking.
It also happens to be the reason holding me from buying an iPhone too. Colleagues have them, and they are neat for being able to access email when outside, but the Google phone also hit the stores here and I am mainly worried about closed apps -> not being able to hack, app review -> not an open market/might not be able to sell app, and finally risk of massive roaming charges.
This is where most of the magic happens... We take the request(s) and process the response. From here we can re direct links and other protocalls[sic] to different internal methods.
It took all of 5 minutes for me to find the interpreter in PhoneGap. The method constructs a method name and argument, and thanks to Obj-C, you can make a call
[obj performSelector:NSSelectorFromString(constructedMethodName) withArguments:args withObject:options];
This is a one line interpreter that will run any code that is downloaded.
The summary says "simply to dump an HTML version of his book into UIWebView" and this is funny, because I did exactly this to put the instructions manual in my game Repton. It took maybe 7 lines of code. Your whole app could be 30 lines of code, and you would not need PhoneGap and you would not be having these problems. I would be willing to write this for you cheap.
So just to summarize, PhoneGap includes an interpreter beyond Apples javascript interpreter. In fact, since Obj-C supports Dynamic Loading, the above interpreter could be used to add classes and methods to an already running program. Almost sounds like LISP; which I think is more powerful than JavaScript.
There's a vastly better way of going about this.
Sell your e-book through one of the commercial services that the iPhone's most popular ebook reader Stanza supports. Your book will be available to over a million iPhone / Touch users (not to mention the other outlets the particular book store may have), and since Stanza purchases are downloaded to the device, they can be read anywhere.
Further, the app store is not a place to sell a book. I don't want an icon for a single book on my app launcher any more than I want an icon for an album on there. I want to go into Stanza to read, just like I want to go into iPod mode to listen.
Your mind is clear / The things that you fear / Will fade with how much you / Believe what you hear
Yeah, you nailed the point. If Apple allowed arbitrary apps to be downloaded from the web (outside of the App Store), this would be a non-issue.
æeee!
I have mailed Apple many times asking them what is wrong with PhoneGap and heard nothing. Many PhoneGap developers tell me that they've also asked Apple again and again for what is so problematic and no one has ever offered what you do.
But I'm not sure that I understand the scope of the problem when you say it will "run any code that is downloaded." I think you pretty much need to write the Objective C before hand and I've never added any extra functions.
While I appreciate the pointer you've provided here, I'm still not sure why this is any different from any arbitrary native application that reads data from the web. Every native app could be said to offer the same opportunity.
One of the classic philosophical tropes from theoretical computer science is that there's no real distinction between data and code.
But this is getting away from my overall point that the AppStore review process is damaged by bad communication and random reactions. The debate over the potential security problems with PhoneGap is a deep one that is better conducted in the open. I hope you'll have the time to write a deeper note about this to the PhoneGap mailing list.
And perhaps you're right that I would have been better off writing something from scratch. But I think there's a real value to working with an open source group because many eyes help fix many potential bugs.
Thanks again for writing.
If you submit the app with an availability date in the far future, it won't go live immediately after being approved. If you go in and change the availability date after you receive approval, it appears immediately.
Having said that, I always forget to do it this way.
... the App Store model sucks. Can you imagine where we'd be today, if, say, Microsoft had thought up the App Store at the time it invented Windows? Say goodbye to Firefox, just as an example. There is absolutely no reason why Apple should have such total control over what runs on the iPhone. If nothing else, it's anti-competitive, and the federal government should be looking into it on that basis.
There are ALREADY about 10 freakin' billion apps like that out there... all of which got approved by the soviet-style bureaucracy which is the app store.
Lamest post EVAR.
Peter - Obj_C is a very dynamic language. As an Obj-C program runs you can call method like, class_addMethod(). See the Objective-C Runtime reference for details. This method modifies the currently running code by adding a method, the implementation of which is a raw pointer. If you understand enough of Obj-C to understand what the method I pointed to in PhoneGapDelegate.m does, you would know that it is a completely general interpreter; pretty neat that you can do that in a single line of Obj-C, but not really different from things you can do in LISP - see http://en.wikipedia.org/wiki/Eval.
To go further, if anywhere in your html you point to an outside server - maybe something like an about page at your website, your app will run whatever it gets from that page. Again, go to the webView() method and you can see the code extract any "gap:" commands and prepare them for running. As I said, a clever progarmmer can make this do anything that can be done in Obj-C, effectively completely replace the App that Apple approves with an entirely different app.
Now you know that PhoneGap has its own embedded interpreter which can make any iPhone API call at all, you should understand why your app was rejected - in fact if it was ever accepted this was probably a mistake on Apple's part.
I have to assume you are not really familiar with Obj-C, because your claim that you only load a UIWebKitView, is clearly not true if you need to use PhoneGap.
And why is Apple not giving you details, because it would cost too much for them to spend the time to make a clear answer.
So do what every other computer platform in the damn universe does - let everyone publish applications and have the market sort out the good from the bad. Chances are you posted this from a PC (in the larger sense, including Mac, *nix, etc) - did you use an "app store" to figure out what software to put on it? No? How did you ever survive? After all, there's must be a billion useless or even actively harmful applications out there. The answer, of course, is that you're a grown-up who can decide for him/herself what to put on your machine. Why can't I do the same with my iPhone?
Or for no reason at all, apparently. In any case, the larger point is that I don't see why I should be limited to software that Apple feels is advantageous to themselves. I'd like, for example, to be able to run Firefox on my iPhone, but I can't, and for no other reason than Apple doesn't like competition.
While I see your point about how this might be abused in narrow circumstances with techniques that I never included in my code, I'm still wondering whether this is a more general problem for any native App.
The more I contemplate issues like this about PhoneGap, it seems to me that any native app that makes a network call could do much the same thing. And so given that, wouldn't this technique be a danger for any native app?
But if I create a game and Best Buy doesn't want it, I can take it to Gamestop. If I write an iPhone application, and Apple doesn't want it, I can suck it. There is no reason for Apple to have this much control over the platform.
Yeah, and the "too many apps" problem is even worse in the PC/Mac/*nix universe. Why, absolutely anyone can publish anything at all! We need to get someone (like Microsoft) to lock down our systems and vet all our apps for us. Think of how much safer and happier we'd be, protected from all the "bad" apps!
Wait for what now? Jailbreak and install Backgrounder.
The more I contemplate issues like this about PhoneGap, it seems to me that any native app that makes a network call could do much the same thing. And so given that, wouldn't this technique be a danger for any native app?
No, not generally. Any native app that makes a network call, collects a program and runs it via an interpreter, yes, which is what PhoneGap does.
Please, before you reply, go back, look at, and understand the code I pointed you to. Convince yourself that it is a fully general interpreter. I would imagine that Apple looks closely at any code that uses the performSelector:NSSelectorFromString() method; they might even reject all apps that use it.
So do what every other computer platform in the damn universe does - let everyone publish applications and have the market sort out the good from the bad.
You seem to be missing something: I don't want to have to sort through piles of crappy apps in order to find a decent app. I'm perfectly happy to have an official "store" or "repository" that's rejected the malware, filtered the crap out, and told the developers to fix the bugs.
Chances are you posted this from a PC (in the larger sense, including Mac, *nix, etc) did you use an "app store" to figure out what software to put on it? No? How did you ever survive?
Amusing. As a matter of fact, I did somewhat use an "app store" of sorts. And chances are, so do you but you're just too arrogant/ignorant to admit it. You see, I downloaded the apps I'm using from a stable apt repository, which is vetted and maintained by volunteers of a sort. And they tell people "No, your app/project can't get into this repository until you fix @bug_reports or for whatever other stupid reason I care to name". But we don't see you railing against the Ubuntu maintainers.
After all, there's must be a billion useless or even actively harmful applications out there. The answer, of course, is that you're a grown-up who can decide for him/herself what to put on your machine. Why can't I do the same with my iPhone?
There's a couple
We've proven time and again that even grown ups don't have the common sense not to install malware (even that which actively announces itself as such) - even if they should (technically) be allowed to install "crap". The interesting bit is that "crappy software" colors people's perception of what they own. What would you think if someone said "oh look at my new phone" and you touched the screen and it crashed? Well you damn sure wouldn't buy it, and chances are they'd be really unhappy with it too. Thus, what Apple's doing by controlling all the apps that people put on their iphones is controlling the expectation that the phone *works* and works *well*.
Even so, the complaints about the app store really boil down to (roughly) three complaints.
1: I think Apple is draconian and evil and I want alternative/competing app stores! Well, let me ask you a couple of questions about where this leads. Are iphones going to keep working if people install random malware and broken apps on them? No. Is Apple going to make money off of the apps bought at a competing app store? No. Are there going to be entire "app stores" that distribute nothing but malware? Yes. Is this going to look bad for Apple? Yes. Should Apple do it? No. Is Apple losing money by not allowing this? No. Do they have any compelling reason to do it? No. Case closed.
2: I WANT OPEN SOURCE SOFTWARE AND LINUX AND GREP RA RA RA. Again, this comes down to Apple controlling the user experience and guaranteeing a positive one. I'm sorry, but this is not the year of the Linux desktop and really it's not the year of the Linux phone either. User experiences tend to be pretty poor: see the Open Moko for a prime example. While cool to geeks like us, it wouldn't be cool to a geek like my wife who just wants the damn thing to be usable and work.
3: I want to run an iPhone Botnet! Yeah, DIAF. The internet has enough of these.
But logic for why it's bad for the Apple, bad for the iphone, and bad for the consumer market in general won't convince you. You're too busy riding your high horse to realize that what you're demanding simply does not make sense. You're too busy to look where your examples really point: to things like Windows (malware-bug-land) and Linux (Virutally unusable hacker-only-land). I mean really, if you're going to demand these things then you already know that the iphone is not for you. Why must you spew your drivel and pester those of us that just want a usable working device with a good solid high quality app store?
Actually, I don't think it does. All of the about.html stuff is bundled with the app. It would only make sense. The GOLD app might have a URL to some of my other books.
I can tell you that there are a number of projects based on PhoneGap in the AppStore. So I'm sure that Apple isn't testing for these combinations of Cocoa calls although perhaps they should.
Thanks again for the pointer.
I'm a big Mac and OSX fan. OSX is a good UNIX system that also makes a good development front end for Linux and BSD. But I have absolutely no interest in developing or even owning an iPhone. First, it doesn't work with CDMA networks like Verizon and Sprint. Second, it's not really your phone if you have to get Apple's permission to run a program on it. People really should avoid locked-down platforms like the iPhone. They're simply not worth it. Buy a small netbook instead.
What great and useful app out of that group is missing from the iphone because it was ejected by Apple.
*crickets*
First, the guy should not be "dumping" his book into an iPhone app and trying to use the App Store as his own personal book store. There are actual book stores who are setup to publish your electronic book, dumbass. They have different requirements and procedures from the App Store, and yes they will seem to make more sense to you since you are publishing a book! The iPhone can only show the first 200 apps you install as icons (you can get at them all with search) so it is unrealistic to think that users are going to fill up their home screen with one book per app. There is Kindle.app and about 200 other big name book readers alone.
Secondly, I have no sympathy for complaints about native iPhone app development. If you don't like the end-to-end code-to-cash workflow of the CocoaTouch API, then you can make iPhone apps using the other API the iPhone supports: the totally open HTML 5. A bonus is that your app will also run on every other computing platform in the world except for Microsoft (and on Microsoft where the browser has been replaced with a modern browser.)
Bringing the above 2 points together: if you have a book to publish, publish it as HTML 5 you stupid idiot. No, Apple won't collect all the monies for you. Too bad. Stop whining.
Their global market share is so tiny (2007/8 *sales*. Not to be confused by the total number of phones in active use!), and their lack of Java so ridiculous, that we professional developers couldn't care less. They are not worth the effort, just to make some Apple fanboys happy, who won't do anything but complain anyway, because your app got more than one clickweel.
Any sufficiently advanced intelligence is indistinguishable from stupidity.