0

我正在尝试在我的 iOS 项目(版本 5.1 >~)上使用 CargoBay,现在是一个简单的测试项目。

这是代码:

-(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    [[CargoBay sharedManager] setPaymentQueueUpdatedTransactionsBlock:^(SKPaymentQueue *queue, NSArray *transactions) {
        NSLog(@"Updated Transactions: %@", transactions);
        SKPaymentTransaction *transaction = transactions[0];
        NSData *receipt = [transaction transactionReceipt];
        NSLog(@"%@", receipt);

        NSURL *url = [[NSURL alloc] initFileURLWithPath:@"https://mydomain/verify"];


        if (receipt) {
            [[CargoBay sharedManager] verifyTransactionWithMethod:@"POST" endpoint:url receipt:receipt password:@"aaa" success:^(NSDictionary *responseObject) {
                 NSLog(@"%@", responseObject);
            } failure:^(NSError *error) {
                 NSLog(@"%@", error);
            }];
        }
   }];

   [[SKPaymentQueue defaultQueue] addTransactionObserver:[CargoBay sharedManager]];


   return YES;
}

但在启动后收到此消息:

2013-08-13 21:41:15.357 TestCargoBay[8357:907] -[AFJSONRequestOperation  setAuthenticationAgainstProtectionSpaceBlock:]: unrecognized selector sent to instance 0x20093b70
2013-08-13 21:41:15.359 TestCargoBay[8357:907] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[AFJSONRequestOperation setAuthenticationAgainstProtectionSpaceBlock:]: unrecognized selector sent to instance 0x20093b70'

消息指向货舱

[requestOperation setAuthenticationAgainstProtectionSpaceBlock ...

代码。

我做错了什么吗?

我的 Podfile 是

platform :ios, '5.0'
pod 'AFNetworking',  '1.3.1'
pod 'CargoBay', '~> 0.3'

最后,我在 Cocoa 编程的时间很短。

谢谢,

路易斯

更新

问题是我使用 cocoapods 安装了 CargoBay 和 AFNetworking。AFNetworking 前缀文件(*.pch)暂时无法被 xcode 识别,我将 Pods-AFNetworking-prefix.pch 内容放在货舱文件中并且可以工作。

谢谢你。

4

1 回答 1

0

使用 AFNetworking 1.2.0 或更低版本应该可以解决这个问题。

于 2013-11-08T05:19:26.503 回答