title: In-App Purchases Crashing App With No Internet Connection
body: <p>My In-App Purchases is works perfect but if I my iPhone is not on Wi-Fi and using cellular connection with slow signal or without signal I'm getting this message:</p>
  
  <blockquote>
    <p>Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Invalid product identifier: (null)'</p>
  </blockquote>
  
  <p>Should I check Internet connection before enabling <em>buy</em> button? I hope there is easier way. All I need is to catch no connection error from <code>StoreKit.</code></p>
  
  <p><strong>Update</strong></p>
  
  <p>For my In-App Purchases code I am using a little bit modified <a href="http://www.raywenderlich.com/21081/introduction-to-in-app-purchases-in-ios-6-tutorial" rel="nofollow">this guide from raywenderlich.com.</a> You also can download <a href="http://cdn1.raywenderlich.com/downloads/InAppRage2.zip" rel="nofollow">the test project.</a>  </p>
  
  <p>My app is for iOS 8 and 7, and this tutorial is for iOS 6. Maybe it's a problem.</p>
  
  <p>I only added <code>(void)paymentQueue:(SKPaymentQueue *)queue
  restoreCompletedTransactionsFailedWithError:(NSError *)error</code> for catching error while restoring app and <code>SKPaymentTransactionStateDeferred</code> case.</p>