0

私はその質問が何度も聞かれたことを知っています。私はそれをすべて見ましたが、この問題を修正できませんでした。

Storekit frameworkタイプの InAppPurchaseManager クラスを追加して作成しましNSObjectた。

製品リクエストを行う必要があるインスタンスを作成しています。

InAppPurchaseManager *inApp = [[InAppPurchaseManager alloc] init];
[inApp loadStore:@"TestProduct"];

のクラス プロパティを作成しましたSKProductsRequest

@property (retain, nonatomic) SKProductsRequest *productsRequest;

//loadStore メソッド

- (void)loadStore:(NSString *)_productID
{
    productID = _productID;
    // restarts any purchases if they were interrupted last time the app was open
    [[SKPaymentQueue defaultQueue] removeTransactionObserver:self];   
    // get the product description (defined in early sections)
    [self requestProUpgradeProductData];
}

- (void)requestProUpgradeProductData 
{

    NSSet *productIdentifiers = [NSSet setWithObject:productID];
    self.productsRequest = [[SKProductsRequest alloc]     
        initWithProductIdentifiers:productIdentifiers];
    self.productsRequest.delegate = self;
    [self.productsRequest start];
}

//デリゲート

- (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:                               
      (SKProductsResponse *)response
{
    //never being called    
}

- (void)requestDidFinish:(SKRequest *)request 
{
    //never being called
}

- (void)request:(SKRequest *)request didFailWithError:(NSError *)error 
{
    //never being called
}

私のインターフェースは次のようになります

@interface InAppPurchaseManager : NSObject <SKProductsRequestDelegate, SKPaymentTransactionObserver, SKRequestDelegate>

この問題を解決する方法を提案してください。

編集:このように

[self.productsRequest start];

実行する

-(void) dealloc {

}
4

1 に答える 1

-4

この問題は、InAppPurchaseManager のプロパティを作成することで修正されます。

于 2014-01-21T11:28:06.123 に答える