Echa un vistazo a SimStoreKit . Es una "versión simulada del StoreKit del iPhone, para probar la interfaz de usuario de la tienda en el iPhone Simulator, o incluso en el dispositivo sin tener que configurar IAP en Connect".
SimStoreKit almacena las compras en los valores predeterminados del usuario bajo la clave ILSimSKTransactions
. Entonces, para borrar todas las compras que puede hacer:
[[NSUserDefaults standardUserDefaults] removeObjectForKey:@"ILSimSKTransactions"]
En el simulador, simplemente puede eliminar su aplicación e instalarla nuevamente.
He utilizado con éxito SimStoreKit para depurar el frente de la tienda de mi aplicación antes de probar con la caja de arena. La belleza de esta biblioteca es que se puede configurar para usar los mismos nombres de clase que el marco StoreKit real (haciendo #define ILSimReplaceRealStoreKit 1
antes de hacerlo #include <ILSimStoreKit.h>
).
En los archivos de origen donde necesito acceder a StoreKit, incluyo este archivo de encabezado:
#import <TargetConditionals.h>
#if TARGET_IPHONE_SIMULATOR
#define kILSimAllowSimulatedStoreKit 1
#define ILSimReplaceRealStoreKit 1
#import <ILSimStoreKit.h>
#else
#import <StoreKit/StoreKit.h>
#endif
Esto tiene el efecto de usar SimStoreKit cuando ejecuto en el simulador y el StoreKit real cuando ejecuto en el dispositivo.