Kiểm tra SimStoreKit . Đó là "phiên bản mô phỏng của StoreKit của iPhone, để thử nghiệm giao diện người dùng cửa hàng trên iPhone Simulator hoặc thậm chí trên thiết bị mà không cần phải thiết lập IAP trong Connect."
SimStoreKit lưu trữ các giao dịch mua theo mặc định của người dùng dưới khóa ILSimSKTransactions
. Vì vậy, để xóa tất cả các giao dịch mua, bạn có thể làm:
[[NSUserDefaults standardUserDefaults] removeObjectForKey:@"ILSimSKTransactions"]
Trên trình mô phỏng, bạn có thể chỉ cần gỡ bỏ ứng dụng của mình và cài đặt lại.
Tôi đã sử dụng thành công SimStoreKit để gỡ lỗi mặt trước cửa hàng ứng dụng của mình trước khi thử nghiệm với hộp cát. Cái hay của thư viện này là nó có thể được thiết lập để sử dụng các tên lớp giống như khung StoreKit thực (bằng cách thực hiện #define ILSimReplaceRealStoreKit 1
trước khi thực hiện #include <ILSimStoreKit.h>
).
Trong các tệp nguồn mà tôi cần truy cập StoreKit, tôi bao gồm tệp tiêu đề này:
#import <TargetConditionals.h>
#if TARGET_IPHONE_SIMULATOR
#define kILSimAllowSimulatedStoreKit 1
#define ILSimReplaceRealStoreKit 1
#import <ILSimStoreKit.h>
#else
#import <StoreKit/StoreKit.h>
#endif
Điều này có ảnh hưởng đến việc sử dụng SimStoreKit khi tôi chạy trên trình mô phỏng và StoreKit thực khi tôi chạy trên thiết bị.