I implemented an Android In-App purchase based on the Dungeons example. However, the dungeon example did not serve applications that required communication with a remote server before content could be delivered. I edited the code to allow this.
Developer documentation has this to say about content delivery on a remote server
Keep in mind that you must send a confirmation when you receive transaction information from the Android Market (step 8 in Figure 2). If you do not send a confirmation message, Android Market will continue to send IN_APP_NOTIFY messages for transactions that you did not confirm. As a best practice, you should not send a CONFIRM_NOTIFICATIONS request for a purchased item until you deliver the item to the user. Thus, if your application crashes or something else prevents your application from delivering the product, your application will still receive the intention to broadcast IN_APP_NOTIFY from the Android Market, indicating that you need to deliver the product. In addition, as a best practice, your application should be able to process IN_APP_NOTIFY messages containing multiple orders.
My implementation follows this and does not send CONFIRM_NOTIFICATION until I am glad my server has unblocked the content. However, I noticed that if I do not send hte CONFIRM_NOTIFICATION (this may be possible if the network crashes or my server is down), I will not continue to receive IN_APP_NOTIFY intentions, as indicated in the documentation.
Has anyone experienced this before? Is there a solution? Documents not updated?
source share