GVoice 1.2 Push Setup with GVMax

Go to http://www.gvmax.com and create an account with your Google login credentials.

After that is complete, click the “Active Monitors” button.

GVMax-1-1-1

Then check “Send Http Post notifications” and enter the following into the following into the POST Urls:

https://wp7voice.appspot.com/gvmax

GVMax-2-1

 

That’s it!

Windows Phone Marketplace Woes

I wrote this letter to the director in charge of developer programs at Microsoft:

Hi Brandon, I got your contact information from Loke Uei Tan, who I've worked with extensively in the past. To introduce myself, I'm Koushik Dutta, a former Device MVP (2008-2009). I dropped out of the WinMo scene around 2008 to begin working on Android and iPhone instead. I have started dabbling in Windows Phone again in since its release.
Mobile app development is my passion and now my full time, self-employed, profession; I have several apps on the Android Market with millions of users.

I am very pleased with the platform as a whole; it has exceeded my expectations in terms of ease of development. A solid V1 product all around, and I am looking forward to future releases that will help round out the platform (ringtones, background processes, inter-app communication).

However, I must say, the Market approval process is a blemish on the platform. And it will have a significant impact on how I will design apps in the future.
I released a Google Voice client (GVoice) on the market a few weeks ago. It took 14 days to get it onto the market, due to a variety of reasons and failures.

  • First failure was due to the back button exiting the app when a non full screen popup was shown.
    • It took 4 days to get this response.
  • Second failure was due to a phone in airplane mode crashing when attempting to setup push.
    • Ok, pretty obscure, but good to know.
    • Took around 4 days to get this response.
  • Third failure was due to Push not being allowed to be turned on by default on, without user confirmation. This is really quite strange.
    • For one, the app is useless without push.
    • Secondly, what are the point of the WMAppManifest.xml capabilities/permissions, if not to explicitly tell the user up front that push would be used? That's what Android does.
    • Thirdly, why is the confirmation task offloaded onto the developer? Why not make a dialog pop up at the system level (similar to iPhone) that lets the user confirm the usage of push?
    • It took 4 days to get this response.
  • Fourth submission: Success! App was released.

I am now trying to release a new version; which was submitted a week ago (11 days if you include the test failure). Its status is still "Testing in Progress". In that same 7 day period, a competitor app, has had two releases.

  • What priority are submissions given? First come first serve? Do resubmissions on failed apps get priority?
  • Why reject the app altogether for obscure bugs? Ie, rejecting a submission for an app that requires connectivity and crashes in airplane mode in specific scenarios. Seems it would be wiser to just note that in the application, approve it, and let the developer address it in a future release. Entirely too much churn is happening here.
  • How does a developer make an emergency release?
    • Currently I am parsing HTML and JSON from a third party web page. If that page format changes, the app stops working, period. I would need to update it immediately.
    • Unfortunately, a 7 day turnaround time is glacial by Android standards (where approvals are instant). An app being broken for that long in lieu of waiting for Market approval is unacceptable and will cost a developer in users and reviews.
    • If this is expected to be the norm, I will need to redesign my application by offloading all parsing onto my own server (infrastructure costs money), to gaurantee reliability and quick fixes.

I would love to hear your thoughts on this.

Thanks,
Koush

Edit: Regarding approving apps with bugs:

Bugs happen. If the bug is low risk, low occurrence, and generally not an issue during normal user usage: Don’t delay the application release by another 4 days by rejecting the app. Obviously highly visible crash bugs or UX issues should be rejected.

Update:

I finally got an update regarding why the GVoice update has not been approved yet:

Hello Koushik,
 
My apologies for the confusion regarding your app since you resubmitted it. The app should have completed testing by now of course so it most likley has become Stuck in Workflow. This means that something in the testing process stopped and the app will need to be resubmitted for testing. Again, I apologize for this inconvenience but it is the only way to resolve this right now.
 
Best Regards,
Ben
The Windows Phone Marketplace Support Team

TLDR version: Something messed up on our end. My bad. Resubmit and we’ll try again. My response:

Uh... you know you can't submit another version of your app with the same language while a submission is in progress?

The Marketplace Support Team needs to resolve this. I can't do another submission from my end...

Another update from Brandon:

Hello Koushik,
 
I apologize for the delay in getting back to you but due to the volume of issues we are handling, it will take a day or two for us to get back to you. Also, we do not have a contact number so we cannot assist other than through this medium. Please understand that additional support and answers can be found in the App Hub Forums as well as they are monitored by Microsoft Evangelists, MVPs and Engineers.
 
Again, I apologize for the trouble you are having submitting the app. The workaround to submit your app is to submit it as a new project instead of an update. You may have to choose a new name for the project in Step 1 to complete this. We are still working with the Certification Team to see if they can remove the app from workflow but o resolution has been provided yet. As soon as I do hear something I will let you know.
 
Best Regards,
Ben
The Windows Phone Marketplace Support Team

I already have people that have purchased the app. How do I give them updates?

Furthermore, if I release another version of the app under a new name, I'll end up having two paid userbases and will need to update TWO apps instead of just one. This is NOT an acceptable workaround.

Koush

Hello Koushik,
 
After working with my support team, we cannot find any app submission after12/7 when GVoice failed testing. Since the site is not allowing you to submit the update, please follow these steps to submit the app and ensure customers receive the update.
 
Create a new project in the App Certification Dashboard
In Step 1, use a new name for the project
In Step 2, use the actual app's name that it will be published under
Continue through the entire process, including the loading of the XAP file and images to get the app into testing.
 
This should work but if you run into any errors, please provide screenshots starting from when you log into the site until you reach the error.
 
Best Regards,
Ben
The Windows Phone Marketplace Support Team

Ben, I have submitted GVoice under the name "GVoice." but with the same Application Title. I hope that users of the "GVoice" app which have already paid are able to upgrade to this new version.

Koush

At this point, I can’t tell if Brandon is trying to be really nice, or just messing with me. Guess we’ll find out. I’ll give him the benefit of the doubt, since he hasn’t chewed me out for being my usual boorish self. So, let’s hope this all works out!

Update: Microsoft really was not prepared. I am apparently the victim of a major “workflow” bug that needs to be manually resolved:

Ben, I have submitted GVoice under the name "GVoice." but with the same Application Title. I hope that users of the "GVoice" app which have already paid are able to upgrade to this new version.

Koush

Hello Koushik,
 
Thank you for resubmitting the app. I do want to add that when submitting the app for testing, as long as you change the name in Step 1 (it can be any name, or even a variation like GVoice 1, 2, etc), Step 2 can remain GVoice. As long as the components in the XAP are similar, there should be no reason for a new app is created. I am requesting my Certification Team to provide more technical details that will explain this further, and if I get a response I will let you know.
 
Best Regards,
Ben
The Windows Phone Marketplace Support Team

Thanks Ben. The whole submission process is very opaque to a developer. The submission process makes it feel like unless you use the "Add Additional Submission" option in the existing submission, it will create a new instance of an application on the market. This is good to know.

Koush

Hello Koushik,
 
I just exited a conference call with the Certification Team and one of the topics was the issue you are experiencing. In short, the steps I provided, which came from the Certification Team until this meeting, were a workaround. Unfortunately, they do not allow for the app to be updated.
 
The Certification Team has acknowledged that apps Stuck in Workflow, as yours is, must be manually repaired by their team. I am putting in a request to get GVoice repaired ASAP, though the process is taking several business days for expedited requests and 2 weeks for all others.
 
What this means is that the newest submission I had you do will not resolve the issue and I must have the Certification Team get your updated app tested and certified. Please allow me to work with them to get this resolved and I apologize for the time this is taking from you. I will provide updates as soon as possible.
 
Best Regards,
Ben
The Windows Phone Marketplace Support Team

GVoice 1.2 Update

GVoice 1.1 isn’t even out yet (still waiting for Microsoft), but I figured I’d prepare an update the page with what’s waiting in the pipeline for users:

  • Switched to using the standard “tilt” animation found in Windows Phone lists.
  • Voicemail playback highlights the transcript word by word, as seen in the Google Voice web interface.
  • Mark as Unread
  • Search is snappier
  • You no longer have to enter a number during login; instead, a list of all valid phones linked to the account is shown.
  • Fixed issue with texts and voicemails being accidentally clicked too easily when scrolling.

GVoice 1.1 Update

SplashScreenImage

Well, GVoice finally got Market approved; and just in time too, since I had a boat load of updates waiting!

Changelog in the coming 1.1 update (waiting for Market approval… again):

  • Push is available to trial version users (ads enabled)
  • Push notifications are now sent for voicemail
  • Search Conversations
  • Call Log
  • Added keyboard auto completion
  • Outgoing calls now open a call screen
  • Fixed potential application startup crash
  • Contact photo downloads are more reliable
  • Progress indicator now has a textual description
  • Conversations can be deleted
  • Google Voice can be dialed via the application menu
  • Direct/PIN Dial is available via the settings menu
  • Fixed conversation sort order