<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: iPhone Tutorial – In-App Purchases</title>
	<atom:link href="http://blog.mugunthkumar.com/coding/iphone-tutorial-%e2%80%93-in-app-purchases/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.mugunthkumar.com/coding/iphone-tutorial-%e2%80%93-in-app-purchases/</link>
	<description>iPhone, iPad, Windows Phone Development and Usability Guidelines</description>
	<lastBuildDate>Tue, 07 Feb 2012 00:53:00 +0800</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: Rob</title>
		<link>http://blog.mugunthkumar.com/coding/iphone-tutorial-%e2%80%93-in-app-purchases/comment-page-4/#comment-3234</link>
		<dc:creator>Rob</dc:creator>
		<pubDate>Wed, 01 Feb 2012 08:46:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.mugunthkumar.com/?p=518#comment-3234</guid>
		<description>Hi,
1. Great blog!
2. I was just wondering how I can detect when the &#039;Confirm Your In App Purchase&#039; alert is displayed on screen?
 - I tried setting up the (void)didPresentAlertView:(UIAlertView *)alertView; from UIAlertViewDelegate but that doesn&#039;t catch the In App Purchase popup.

Any ideas?
Thanks!

</description>
		<content:encoded><![CDATA[<p>Hi,<br />
1. Great blog!<br />
2. I was just wondering how I can detect when the &#8216;Confirm Your In App Purchase&#8217; alert is displayed on screen?<br />
 - I tried setting up the (void)didPresentAlertView:(UIAlertView *)alertView; from UIAlertViewDelegate but that doesn&#8217;t catch the In App Purchase popup.</p>
<p>Any ideas?<br />
Thanks!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: My In-App Purchasing War Story &#124; EJSMITHWEB</title>
		<link>http://blog.mugunthkumar.com/coding/iphone-tutorial-%e2%80%93-in-app-purchases/comment-page-4/#comment-3206</link>
		<dc:creator>My In-App Purchasing War Story &#124; EJSMITHWEB</dc:creator>
		<pubDate>Wed, 18 Jan 2012 19:03:28 +0000</pubDate>
		<guid isPermaLink="false">http://blog.mugunthkumar.com/?p=518#comment-3206</guid>
		<description>[...] coming from me, that&#8217;s saying a lot.To follow a nice tutorial based on MKStorekit, go here.  He gives you all the basics walk-throughs that I&#8217;m too lazy to give you.  This entry was [...]</description>
		<content:encoded><![CDATA[<p>[...] coming from me, that&#8217;s saying a lot.To follow a nice tutorial based on MKStorekit, go here.  He gives you all the basics walk-throughs that I&#8217;m too lazy to give you.  This entry was [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Inalbansal</title>
		<link>http://blog.mugunthkumar.com/coding/iphone-tutorial-%e2%80%93-in-app-purchases/comment-page-4/#comment-3118</link>
		<dc:creator>Inalbansal</dc:creator>
		<pubDate>Fri, 09 Dec 2011 06:49:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.mugunthkumar.com/?p=518#comment-3118</guid>
		<description>
          
    
        After searching through this forum and online for hours, I 
can&#039;t find an answer to the problem I&#039;m having.  Here&#039;s the basic 
scenario:

Trying to make an in-app purchase in my app in the sandbox 
environment always fails.  Getting the list of available products 
through SKProductsRequest works fine .. I get an array of valid 
SKProduct objects back.  But after I queue an SKPayment in the 
SKPaymentQueue, the transactionState of the SKPaymentTransaction object 
that the observe gets is SKPaymentTransactionStateFailed.  HOWEVER, when
 I try to see WHY it failed, I find that the error property of the 
SKPaymentTransaction object is nil.  There is no NSError object there to
 query!!

Also, in the app, no pop up ever appears to ask for the account 
credentials to verify the purchase!  And yes, I did first log out of my 
real Apple ID in the Settings app, and I did not try to sign back in there with my test account ID.  That way, there should
 be a popup when I try to make a purchase asking me for my Apple ID 
info, where I would enter the test account info.  But that popup never 
appears.  The transaction just silently fails.

If I query the payment property of the failed SKPaymentTransaction 
object, I find the correct SKPayment object with the correct 
productIdentifier, so the failed transaction is at least asking for the 
right product.  So why is it failing?

Has anybody else seen this?

I&#039;ve gone through all of the proper setup steps listed in the 
documentation and elsewhere in this forum ... I created a non-wildcare 
app ID, activated in-app payments for that ID, created a new, dummy app 
in iTunes Connect (checking &quot;upload binary later&quot;), created some in-app 
purchase products, made them available for sale, created a new developer
 provisioning profile for the new app ID, downloaded that profile and 
installed it in Xcode and on my test phone, changed the bundle 
identifier in the info.plist of the app, changed the code signing to use
 the new provisioning profile, set up a test user in iTunes Connect with
 a novel email address, etc etc etc etc etc.  Like I say, I do 
get an array of valid SKProduct objects from the app store servers, so 
things must be set up somewhat correctly.  But even after redoing 
everything from scratch a few times and tweaking everything I can think 
of, I can&#039;t get a sandbox purchase to go through  .. or even to get the 
confirm purchase popup!

Any ideas?</description>
		<content:encoded><![CDATA[<p>After searching through this forum and online for hours, I<br />
can&#8217;t find an answer to the problem I&#8217;m having.  Here&#8217;s the basic<br />
scenario:</p>
<p>Trying to make an in-app purchase in my app in the sandbox<br />
environment always fails.  Getting the list of available products<br />
through SKProductsRequest works fine .. I get an array of valid<br />
SKProduct objects back.  But after I queue an SKPayment in the<br />
SKPaymentQueue, the transactionState of the SKPaymentTransaction object<br />
that the observe gets is SKPaymentTransactionStateFailed.  HOWEVER, when<br />
 I try to see WHY it failed, I find that the error property of the<br />
SKPaymentTransaction object is nil.  There is no NSError object there to<br />
 query!!</p>
<p>Also, in the app, no pop up ever appears to ask for the account<br />
credentials to verify the purchase!  And yes, I did first log out of my<br />
real Apple ID in the Settings app, and I did not try to sign back in there with my test account ID.  That way, there should<br />
 be a popup when I try to make a purchase asking me for my Apple ID<br />
info, where I would enter the test account info.  But that popup never<br />
appears.  The transaction just silently fails.</p>
<p>If I query the payment property of the failed SKPaymentTransaction<br />
object, I find the correct SKPayment object with the correct<br />
productIdentifier, so the failed transaction is at least asking for the<br />
right product.  So why is it failing?</p>
<p>Has anybody else seen this?</p>
<p>I&#8217;ve gone through all of the proper setup steps listed in the<br />
documentation and elsewhere in this forum &#8230; I created a non-wildcare<br />
app ID, activated in-app payments for that ID, created a new, dummy app<br />
in iTunes Connect (checking &#8220;upload binary later&#8221;), created some in-app<br />
purchase products, made them available for sale, created a new developer<br />
 provisioning profile for the new app ID, downloaded that profile and<br />
installed it in Xcode and on my test phone, changed the bundle<br />
identifier in the info.plist of the app, changed the code signing to use<br />
 the new provisioning profile, set up a test user in iTunes Connect with<br />
 a novel email address, etc etc etc etc etc.  Like I say, I do<br />
get an array of valid SKProduct objects from the app store servers, so<br />
things must be set up somewhat correctly.  But even after redoing<br />
everything from scratch a few times and tweaking everything I can think<br />
of, I can&#8217;t get a sandbox purchase to go through  .. or even to get the<br />
confirm purchase popup!</p>
<p>Any ideas?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Hokuto2035</title>
		<link>http://blog.mugunthkumar.com/coding/iphone-tutorial-%e2%80%93-in-app-purchases/comment-page-4/#comment-3102</link>
		<dc:creator>Hokuto2035</dc:creator>
		<pubDate>Mon, 05 Dec 2011 14:49:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.mugunthkumar.com/?p=518#comment-3102</guid>
		<description>i have the same problem too. when i try to delete the item use &quot;removeAllKeychainData&quot; it returns Error says &quot;SFHFKeychainUtilErrorDomain Code = -25300&quot;.
Why it can not be clear?</description>
		<content:encoded><![CDATA[<p>i have the same problem too. when i try to delete the item use &#8220;removeAllKeychainData&#8221; it returns Error says &#8220;SFHFKeychainUtilErrorDomain Code = -25300&#8243;.<br />
Why it can not be clear?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: James</title>
		<link>http://blog.mugunthkumar.com/coding/iphone-tutorial-%e2%80%93-in-app-purchases/comment-page-4/#comment-3096</link>
		<dc:creator>James</dc:creator>
		<pubDate>Wed, 30 Nov 2011 20:56:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.mugunthkumar.com/?p=518#comment-3096</guid>
		<description>We have a new app which we are going to submit to apple and it will have in app purchase.
Third party companies want to give our app away for free to their subscribers and pay us a lump sum to do so. Will apple allow us to do that and will they want any part of the lump sum we get ?
If they did allow it without requiring payment we would want to add &quot;do you have a promo code&quot; prior to the in app purchase and give the promo codes to the third parties. Their subscribers would then enter the promo code to get the app for free.
If it is possible - can you write the software for us ?</description>
		<content:encoded><![CDATA[<p>We have a new app which we are going to submit to apple and it will have in app purchase.<br />
Third party companies want to give our app away for free to their subscribers and pay us a lump sum to do so. Will apple allow us to do that and will they want any part of the lump sum we get ?<br />
If they did allow it without requiring payment we would want to add &#8220;do you have a promo code&#8221; prior to the in app purchase and give the promo codes to the third parties. Their subscribers would then enter the promo code to get the app for free.<br />
If it is possible &#8211; can you write the software for us ?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: MiniMan</title>
		<link>http://blog.mugunthkumar.com/coding/iphone-tutorial-%e2%80%93-in-app-purchases/comment-page-4/#comment-3069</link>
		<dc:creator>MiniMan</dc:creator>
		<pubDate>Sun, 13 Nov 2011 12:06:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.mugunthkumar.com/?p=518#comment-3069</guid>
		<description>I keep getting the same problem. It&#039;s always true when I do if([MKStoreManager isFeaturePurchased:@&quot;com.myapp.feature&quot;]).

Does anyone know a fix for this, please?</description>
		<content:encoded><![CDATA[<p>I keep getting the same problem. It&#8217;s always true when I do if([MKStoreManager isFeaturePurchased:@"com.myapp.feature"]).</p>
<p>Does anyone know a fix for this, please?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brad</title>
		<link>http://blog.mugunthkumar.com/coding/iphone-tutorial-%e2%80%93-in-app-purchases/comment-page-4/#comment-3059</link>
		<dc:creator>Brad</dc:creator>
		<pubDate>Thu, 03 Nov 2011 18:46:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.mugunthkumar.com/?p=518#comment-3059</guid>
		<description>1. I wanted to test this with multiple accounts, so I deleted the app and signed out of my test user 1.  I reinstalled with app but:

    if([MKStoreManager isFeaturePurchased:@&quot;com.myapp.feature&quot;])

keeps returning true even though I would assume it shouldn&#039;t be?  I want to test the in-app process in a few different ways but can&#039;t seem to test it after I already purchased it.

2. How do I differentiate between failed requests, and cancelled requests?

Thanks in advance for your help.  After figuring out these few things, my in-app purchase headache will be complete and I would be more than happy to make a donation.  Thanks.</description>
		<content:encoded><![CDATA[<p>1. I wanted to test this with multiple accounts, so I deleted the app and signed out of my test user 1.  I reinstalled with app but:</p>
<p>    if([MKStoreManager isFeaturePurchased:@"com.myapp.feature"])</p>
<p>keeps returning true even though I would assume it shouldn&#8217;t be?  I want to test the in-app process in a few different ways but can&#8217;t seem to test it after I already purchased it.</p>
<p>2. How do I differentiate between failed requests, and cancelled requests?</p>
<p>Thanks in advance for your help.  After figuring out these few things, my in-app purchase headache will be complete and I would be more than happy to make a donation.  Thanks.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: guest</title>
		<link>http://blog.mugunthkumar.com/coding/iphone-tutorial-%e2%80%93-in-app-purchases/comment-page-4/#comment-3041</link>
		<dc:creator>guest</dc:creator>
		<pubDate>Thu, 20 Oct 2011 11:16:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.mugunthkumar.com/?p=518#comment-3041</guid>
		<description>Hi, Thank you for tutorial
Let&#039;s say I want to make in app purchase for a magazine. Will your MKStoreKit work with newsstand on iOS5?</description>
		<content:encoded><![CDATA[<p>Hi, Thank you for tutorial<br />
Let&#8217;s say I want to make in app purchase for a magazine. Will your MKStoreKit work with newsstand on iOS5?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Joe Rickerby</title>
		<link>http://blog.mugunthkumar.com/coding/iphone-tutorial-%e2%80%93-in-app-purchases/comment-page-4/#comment-3034</link>
		<dc:creator>Joe Rickerby</dc:creator>
		<pubDate>Tue, 04 Oct 2011 16:14:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.mugunthkumar.com/?p=518#comment-3034</guid>
		<description>Just to say thank you so much for posting this tutorial, I&#039;m sure it would have taken me a long time to get this going had I not seen this.</description>
		<content:encoded><![CDATA[<p>Just to say thank you so much for posting this tutorial, I&#8217;m sure it would have taken me a long time to get this going had I not seen this.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jack</title>
		<link>http://blog.mugunthkumar.com/coding/iphone-tutorial-%e2%80%93-in-app-purchases/comment-page-1/#comment-3028</link>
		<dc:creator>Jack</dc:creator>
		<pubDate>Thu, 29 Sep 2011 15:13:00 +0000</pubDate>
		<guid isPermaLink="false">http://blog.mugunthkumar.com/?p=518#comment-3028</guid>
		<description>I handles this in an app I am developing for a client. If you try to repurchase from the app store apple will tell you that you already own the product and will download it again for you at no cost.  Unfortunately you still may have the problem of having a buy now button that will confuse the end user.  I solved this by creating a database where I stored each purchased product by product ID and user (currently UUID) but may need to change this due to apple&#039;s plan to restrict this.  When an end user goes to a buy page I check to see if the person already purchased the product and if so I change the buy button to a reload button and skip the app store entirely.  This keeps the user from having to re-log into the app store.  I then handle the reload from my own back-end server.</description>
		<content:encoded><![CDATA[<p>I handles this in an app I am developing for a client. If you try to repurchase from the app store apple will tell you that you already own the product and will download it again for you at no cost.  Unfortunately you still may have the problem of having a buy now button that will confuse the end user.  I solved this by creating a database where I stored each purchased product by product ID and user (currently UUID) but may need to change this due to apple&#8217;s plan to restrict this.  When an end user goes to a buy page I check to see if the person already purchased the product and if so I change the buy button to a reload button and skip the app store entirely.  This keeps the user from having to re-log into the app store.  I then handle the reload from my own back-end server.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic
Page Caching using disk: enhanced

Served from: blog.mugunthkumar.com @ 2012-02-07 21:05:12 -->
