2010-11-16 5 views
0

, когда я запускаю мой код ниже он дает такой ответ на устройстве ....Вопрос об ошибке iPhone

- (void) requestProductData 
{ 
// 
NSString *str = [[NSString alloc] initWithFormat:@"com.mycompany.inapppurchasetesting.productid"];//Same as the Product Id displayed in Itunes Connect//"]; 

SKProductsRequest *request= [[SKProductsRequest alloc] initWithProductIdentifiers:[NSSet setWithObject:str]]; 

request.delegate = self; 

[request start]; 
// 
//NSSet *productIDs = [NSSet setWithObjects:@"com.mycompany.inapppurchasetesting.productid", nil]; 

//SKProductsRequest *request = [[SKProductsRequest alloc] initWithProductIdentifiers:productIDs]; 

//request.delegate = self; 

NSLog(@"Requesting"); 

//[request start]; 
} 

- (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response 
{ 
    NSArray *myProduct = response.products; 

NSArray *myInvalidProducts = response.invalidProductIdentifiers; 

NSLog(@"Did recieve response"); 

    NSLog(@"Response count is %d",response.products.count); 
NSLog(@"Invalid response count is %d",response.invalidProductIdentifiers.count); 

for (int i = 0; i<myProduct.count; i++) 
{ 
    NSLog(@"t:%@",[[myProduct objectAtIndex:i] localizedTitle]); 
} 

for(int i = 0; i < myInvalidProducts.count; ++i) 
{ 
    NSLog(@"Invalid products:%@",[[myInvalidProducts objectAtIndex:i] localizedTitle]); 
    } 

// populate UI 
[request autorelease]; 
} 

2010-11-16 14: 14: 46,028 InAppPurchaseTesting [7357: 307] Посмотреть нагружен

2010-11-16 14: 14: 46,164 InAppPurchaseTesting [7357: 307] Запрос

2010-11-16 14: 14: 46.196 InAppPurchaseTesting [7357: 307] может производить платежи

2010- 11-16 14: 14: 52,135 InAppPurchaseTesting [7357: 307] ли ответ Получать

2010-11-16 14: 14: 52,146 InAppPurchaseTesting [7357: 307] Количество отклика составляет 0

2010-11-16 14: 14: 52,152 InAppPurchaseTesting [7357 : 307] Недопустимое число ответ 1

2010-11-16 14: 14: 52,160 InAppPurchaseTesting [7357: 307] - [NSCFString localizedTitle]: непризнанные селектор направлен например 0x114990

2010-11-16 14 : 14: 52.181 InAppPurchaseTesting [7357: 307] * Завершение приложения из-за неперехваченного исключения 'NSInvalid ArgumentException», причина: '- [NSCFString localizedTitle]: непризнанные селектор направлен например 0x114990'

почему происходит выше ошибка ...

, пожалуйста, руководство меня ...

ответ

8

Поскольку invalidProductIdentifiers содержит только массив NSString s, а не SKProduct s.

See the StoreKit documentation.

NSLog(@"Invalid products:%@",[myInvalidProducts objectAtIndex:i]); 
+0

привет, вы можете рассказать мне, как мне нужно его показать. – user198725878

+0

Что вам нужно показать? Поскольку идентификаторы productIdentifiers недействительны, вы можете показывать только productIdentifier, а не локализацию. См. Мой отредактированный ответ. –

+0

@joseph; спасибо за ответ ... то, что я спросил у вас, может ли вы показать, что такое ошибка в моем коде .. это не показывает продукты ... с момента его возвращения 0 count – user198725878

2

Вы не пытаетесь назвать "localizedTitle" на NSCFString вместо продукта?