繁体   English   中英

Apple Mach-O链接器错误(IAP)

[英]Apple Mach-O Linker Error (IAP)

我正在努力应用内购买。 每当我导入StoreKit时,都会收到此错误。
我已经在这几天没有运气了。有人帮忙吗?

头文件:

#import <StoreKit/StoreKit.h>    

#define kInAppPurchaseManagerProductsFetchedNotification          @"kInAppPurchaseManagerProductsFetchedNotification"

@interface InAppPurchaseManager : NSObject <SKProductsRequestDelegate>
{
    SKProduct *proUpgradeProduct;
    SKProductsRequest *productsRequest;
}
@end

实施档案:

#import "IAPManager.h"

@implementation InAppPurchaseManager 

- (void)requestProUpgradeProductData
{
    NSSet *productIdentifiers = [NSSet 
       setWithObject:@"com.runmonster.runmonsterfree.upgradetopro" ];
    productsRequest = [[SKProductsRequest alloc] initWithProductIdentifiers:productIdentifiers];
    productsRequest.delegate = self;
    [productsRequest start];
}

#pragma mark -
#pragma mark SKProductsRequestDelegate methods

- (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response
{
    NSArray *products = response.products;
    proUpgradeProduct = [products count] == 1 ? [[products firstObject] retain] : nil;
    if (proUpgradeProduct)
    {
        NSLog(@"Product title: %@" , proUpgradeProduct.localizedTitle);
        NSLog(@"Product description: %@" , proUpgradeProduct.localizedDescription);
        NSLog(@"Product price: %@" , proUpgradeProduct.price);
        NSLog(@"Product id: %@" , proUpgradeProduct.productIdentifier);
    }

    for (NSString *invalidProductId in response.invalidProductIdentifiers)
    {
        NSLog(@"Invalid product id: %@" , invalidProductId);
    }


    [productsRequest release];

    [[NSNotificationCenter defaultCenter] postNotificationName:kInAppPurchaseManagerProductsFetchedNotification object:self userInfo:nil];
}
@end

那个杀了我的错误:

    Undefined symbols for architecture armv7:
      "_OBJC_CLASS_$_SKProductsRequest", referenced from:
          objc-class-ref in IAPManager.o
    ld: symbol(s) not found for architecture armv7
    collect2: ld returned 1 exit status

"_OBJC_CLASS_$_SKProductsRequest", referenced from:    
Objc-class-ref in IAPManager.o    
Symbol(s) not found for architecture armv7    
Collect2: Id returned 1 exit status

因为您添加了“标题”,而不是二进制文件。 将StoreKitFramework放入带库的buildPhase-> Link二进制文件中。 神奇地这会起作用;)

您忘记将StoreKit.framework添加到您链接的库中。

此链接显示了如何添加它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM