web-dev-qa-db-ja.com

iOS _OBJC_CLASS _ $ _ ASIdentifierManage参照元:ViewController.oのobjc-class-ref

IOSでWebViewを起動し、GETリクエストの一部としてIDFAを送信しようとしていますが、ビルドしようとすると失敗し、次のエラーが発生します。

Undefined symbols for architecture i386:
  "_OBJC_CLASS_$_ASIdentifierManager", referenced from:
   objc-class-ref in ViewController.o
   ld: symbol(s) not found for architecture i386
  clang: error: linker command failed with exit code 1 (use -v to see invocation)

ここに私が持っているコードがあります。ここで私が何を間違っているのか、私は少し行き詰まっています

    #import "ViewController.h"
    #import "AdSupport/ASIdentifierManager.h"

    @interface ViewController ()
    @end

    @implementation ViewController
    @synthesize webView;



    - (void)viewDidLoad
    {
        NSString *idfaString = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];

    webView.backgroundColor = [UIColor blueColor];
    NSURL *url = [NSURL URLWithString:@"http://example.com/"];
    NSString *param = [url.path stringByAppendingString: idfaString];
    NSURL *send = [[NSURL alloc] initWithString:param];
    NSURLRequest *req = [NSURLRequest requestWithURL:send];

    [webView loadRequest:req];


    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
}

    - (void)didReceiveMemoryWarning
   {
       [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end
11
Cyph

確認してください ASIdentifierManager.mは、プロジェクトのターゲットの「ターゲットメンバーシップ」でチェックされます。

21
rmaddy

私と同じくらいバカな人のために、プロジェクトにもAdSupport.frameworkを追加することを忘れないでください。

29
Enrico Susatyo