Deprecated: Assigning the return value of new by reference is deprecated in /home/martingo/martingordon.org/blog/wp-settings.php on line 512

Deprecated: Assigning the return value of new by reference is deprecated in /home/martingo/martingordon.org/blog/wp-settings.php on line 527

Deprecated: Assigning the return value of new by reference is deprecated in /home/martingo/martingordon.org/blog/wp-settings.php on line 534

Deprecated: Assigning the return value of new by reference is deprecated in /home/martingo/martingordon.org/blog/wp-settings.php on line 570

Strict Standards: Declaration of Walker_Page::start_lvl() should be compatible with Walker::start_lvl(&$output) in /home/martingo/martingordon.org/blog/wp-includes/classes.php on line 1199

Strict Standards: Declaration of Walker_Page::end_lvl() should be compatible with Walker::end_lvl(&$output) in /home/martingo/martingordon.org/blog/wp-includes/classes.php on line 1199

Strict Standards: Declaration of Walker_Page::start_el() should be compatible with Walker::start_el(&$output) in /home/martingo/martingordon.org/blog/wp-includes/classes.php on line 1199

Strict Standards: Declaration of Walker_Page::end_el() should be compatible with Walker::end_el(&$output) in /home/martingo/martingordon.org/blog/wp-includes/classes.php on line 1199

Strict Standards: Declaration of Walker_PageDropdown::start_el() should be compatible with Walker::start_el(&$output) in /home/martingo/martingordon.org/blog/wp-includes/classes.php on line 1244

Strict Standards: Declaration of Walker_Category::start_lvl() should be compatible with Walker::start_lvl(&$output) in /home/martingo/martingordon.org/blog/wp-includes/classes.php on line 1391

Strict Standards: Declaration of Walker_Category::end_lvl() should be compatible with Walker::end_lvl(&$output) in /home/martingo/martingordon.org/blog/wp-includes/classes.php on line 1391

Strict Standards: Declaration of Walker_Category::start_el() should be compatible with Walker::start_el(&$output) in /home/martingo/martingordon.org/blog/wp-includes/classes.php on line 1391

Strict Standards: Declaration of Walker_Category::end_el() should be compatible with Walker::end_el(&$output) in /home/martingo/martingordon.org/blog/wp-includes/classes.php on line 1391

Strict Standards: Declaration of Walker_CategoryDropdown::start_el() should be compatible with Walker::start_el(&$output) in /home/martingo/martingordon.org/blog/wp-includes/classes.php on line 1442

Strict Standards: Redefining already defined constructor for class wpdb in /home/martingo/martingordon.org/blog/wp-includes/wp-db.php on line 306

Deprecated: Assigning the return value of new by reference is deprecated in /home/martingo/martingordon.org/blog/wp-includes/cache.php on line 103

Strict Standards: Redefining already defined constructor for class WP_Object_Cache in /home/martingo/martingordon.org/blog/wp-includes/cache.php on line 431

Deprecated: Assigning the return value of new by reference is deprecated in /home/martingo/martingordon.org/blog/wp-includes/query.php on line 61

Deprecated: Assigning the return value of new by reference is deprecated in /home/martingo/martingordon.org/blog/wp-includes/theme.php on line 1109

Strict Standards: Declaration of Walker_Comment::start_lvl() should be compatible with Walker::start_lvl(&$output) in /home/martingo/martingordon.org/blog/wp-includes/comment-template.php on line 1266

Strict Standards: Declaration of Walker_Comment::end_lvl() should be compatible with Walker::end_lvl(&$output) in /home/martingo/martingordon.org/blog/wp-includes/comment-template.php on line 1266

Strict Standards: Declaration of Walker_Comment::start_el() should be compatible with Walker::start_el(&$output) in /home/martingo/martingordon.org/blog/wp-includes/comment-template.php on line 1266

Strict Standards: Declaration of Walker_Comment::end_el() should be compatible with Walker::end_el(&$output) in /home/martingo/martingordon.org/blog/wp-includes/comment-template.php on line 1266

Strict Standards: Redefining already defined constructor for class WP_Dependencies in /home/martingo/martingordon.org/blog/wp-includes/class.wp-dependencies.php on line 31

Strict Standards: Redefining already defined constructor for class WP_Http in /home/martingo/martingordon.org/blog/wp-includes/http.php on line 61

Strict Standards: Non-static method unfancy_quote::init() should not be called statically in /home/martingo/martingordon.org/blog/wp-content/plugins/sem-unfancy-quote/sem-unfancy-quote.php on line 55

Strict Standards: Non-static method WP_Http_ExtHTTP::test() should not be called statically, assuming $this from incompatible context in /home/martingo/martingordon.org/blog/wp-includes/http.php on line 94

Strict Standards: Non-static method WP_Http_Curl::test() should not be called statically, assuming $this from incompatible context in /home/martingo/martingordon.org/blog/wp-includes/http.php on line 97

Strict Standards: Non-static method WP_Http_ExtHTTP::test() should not be called statically, assuming $this from incompatible context in /home/martingo/martingordon.org/blog/wp-includes/http.php on line 142

Strict Standards: Non-static method WP_Http_Streams::test() should not be called statically, assuming $this from incompatible context in /home/martingo/martingordon.org/blog/wp-includes/http.php on line 145
<br /> <b>Strict Standards</b>: call_user_func_array() expects parameter 1 to be a valid callback, non-static method unfancy_quote::strip_quotes() should not be called statically in <b>/home/martingo/martingordon.org/blog/wp-includes/plugin.php</b> on line <b>166</b><br /> Martin Gordon's Blog <br /> <b>Strict Standards</b>: call_user_func_array() expects parameter 1 to be a valid callback, non-static method unfancy_quote::strip_quotes() should not be called statically in <b>/home/martingo/martingordon.org/blog/wp-includes/plugin.php</b> on line <b>166</b><br /> / Rejected (Twice!) From the App Store

Rejected (Twice!) From the App Store

I am now a proud member of the elite group of developers who have had applications rejected from the iPhone App Store.

The application I have been working on since a few weeks after the SDK came out is Flickup, a simple Flickr uploader. When Apple announced the July 7th deadline, I pulled an all-nighter that day to finish it up and submitted the app to Apple around 6am in order to meet the 3pm deadline for inclusion in the App Store at launch. When the App Store is launched on Thursday/Friday, my app is nowhere to be found and the status remains "In Review". I sent an email on Saturday to Apple asking why Flickup was still in review and I received a non-response three days later telling me that "In Review" means my application is being reviewed by Apple. I responded immediately clarifying my inquiry and I finally received this response yesterday:

At this time, Flickup cannot be posted to the App Store because it does not allow the user to logout or change the Flickr account that they are using.

In order for your application to be reconsidered for the App Store, please resolve this issue and upload your new binary to iTunes Connect.

This is a perfectly valid critique, and an oversight on my part, but did it really take them two weeks to tell me about it? Would they have even told me had I not emailed them about my app's status? In any case, the time it took to get a decision on Flickup gave me time to fix some bugs, and of course add the required logout functionality.

As an aside, the Flickr Authentication API's Implementation Guidelines merely states, "Users must be provided with 'logout' functionality." The API documentation does not provide any way to revoke tokens and log users out. I had to resort to directing users to their revoke permissions page instead.

In the mean time, the App Store turned one week old and gripes about the review functionality sprouted everywhere, particularly with regard to the ability for people to review an app without actually having used it. This "feature" of the App Store prompted the cheapskates out there to use reviews as a medium to complain about price. Taking this to heart, I spent some time last week preparing a demo version of Flickup that would allow people to sample the app before dropping two Washingtons on the full version. I submitted the demo version on Friday and received a decision today:

Flickup Demo cannot be posted to the App Store because it is a beta or feature-limited version. Any reference to demo or beta needs to be removed from the binary and metadata. Free or "Lite" versions are acceptable, however the application must be a fully functional app and cannot reference features that are not implemented or up-sell to the full version.

In spite of the lightning fast turnaround time, I am still just as angry about this rejection than the last one since there was no prior warning (in program agreements or otherwise) that demo versions would not be allowed. It's hard to believe that Apple isn't aware that people are crying out for demos and trials; going as far as explicitly prohibiting them (while letting all other sorts of crap through) is nothing short of infuriating.

Technorati Tags: , , , ,

Comments (14) left to “Rejected (Twice!) From the App Store”

  1. Apple Launching App Store Beta Program wrote:

    [...] know their app will work once it goes live), but it still doesn't address the the delays and lack of communication that many developers are complaining about. CrunchBase Information iPhone App Store [...]

  2. TechCrunch Japanese アーカイブ » Appleが、App Storeベータプログラムを始動 wrote:

    [...] アプリがまだ承認されていない開発者もベータプログラムに参加できるようだ。これで開発者たちの不安の一部は解消されるはずだ(少なくともアプリを公開したときにちゃんと動くことがわかる)。しかし、多くの開発者が不満を漏らす遅れとコミュニケーション不足の問題は未だ対処されていない。 CrunchBase Information iPhone App Store Information provided by CrunchBase [...]

  3.   Apple Launching App Store Beta Program by Imagebee.net Blog wrote:

    [...] know their app will work once it goes live), but it still doesn't address the the delays and lack of communication that many developers are complaining [...]

  4. AppPedia » Blog Archive » Apple Launching App Store Beta Program wrote:

    [...] know their app will work once it goes live), but it still doesn’t address the the delays and lack of communication that many developers are complaining [...]

  5. woo wrote:

    Consider yourself lucky you've even been approved to pay them money… lots of us haven't even had that yet…

  6. woo wrote:

    But I agree, the communication has been abysmal! I think it's just the whole time crunch and newness though, things will be worked out, with time… (I'm crossing my fingers)

  7. App Store Puzzle Comes Together, but Some Questions Remain | MacApper wrote:

    [...] today, Martin Gordon, developer of the forthcoming Flickup app for iPhone, wrote in a frustrated blog post about his experience with App Store submission and (lack of) communication with Apple about the [...]

  8. Apple Launching App Store Beta Program | NewsMeToday wrote:

    [...] know their app will work once it goes live), but it still doesn't address the the delays and lack of communication that many developers are complaining [...]

  9. La App Store tendrá una sección para programas en fase Beta - AppleHOY wrote:

    [...] Martin Gordon creó una aplicación muy simple que, como FlickExport, nos permite subir imágenes a Flickr , desde el terminal, cuando se lanzó el último SDK fue uno de los primeros en enviar su software. Pero en el momento que salió la App Store no encontró su soft en la lista disponible, sí estaba en la sección de "En Revisión". [...]

  10. kL wrote:

    I hope that the reason for rejecting demo apps is that Apple is going to roll out update to AppStore soon that would better integrade demos (so you wouldn't have to delete old app and re-enter data in new copy, but rather use Update feature to get upgrade seamlessly).

  11. Reaperducer wrote:

    I've been looking for an app that would allow me to upload my iPhone photos to Flickr without going through e-mail. Initially, I was glad when I found this page detailing your app. But after reading your blog entries about Apple's approval process I have come to the conclusion that you're a real jerk and I'm no longer interested in having your application on my iPhone. You need to take a deep breath and stop being such a tool. I will not spend $1.99 to support a someone like you.

  12. Justin wrote:

    Not letting you add a feature limited version is stupid. What about Twitterific? It has a function that insists that you buy the premium App to use. That is exactly contrary to what they told you. As a recent apple convert, I am beginning to wonder if I made the right decision.

  13. The Tides are Turning as Developers Leave Apple for Android | AndroidGuys wrote:

    [...] app folks who might be swayed to Google's team as more and more stories like Podcaster and Flickup hit mainstream tech [...]

  14. Alfabetic » Blog Archive » Apple lanzará programa beta de Tienda de Aplicaciones wrote:

    [...] una vez que se transmite en vivo), pero aún así, no se trata el tema de las demoras y la falta de comunicación sobre los cuales muchos desarrolladores se están [...]