【问题标题】:Fabric Answers for OSX link errorOSX链接错误的Fabric Answers
【发布时间】:2016-01-19 21:36:03
【问题描述】:

尝试在 OSX 平台上使用刚刚公布的 Answers 框架:

pod 'Fabric'
pod 'Answers'
pod 'Crashlytics'

#import <Fabric/Fabric.h>
#import <Answers/Answers.h>
#import <Crashlytics/Crashlytics.h>

[Fabric with:@[[Crashlytics class], [Answers class]]];

得到一堆错误:

...
duplicate symbol _OBJC_METACLASS_$_CLSAnswersInviteEvent in:
/Users/k06a/Projects/UXMaterial/Pods/Answers/OSX/Answers.framework/Answers(CLSAnswersInviteEvent.o)
/Users/k06a/Projects/UXMaterial/Pods/Crashlytics/OSX/Crashlytics.framework/Crashlytics(CLSAnswersInviteEvent.o)
ld: 200 duplicate symbols for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

【问题讨论】:

    标签: macos cocoapods twitter-fabric


    【解决方案1】:

    那是因为Crashlytics 框架内部已经包含Answers 框架。你只需要这样做:

    Pod 文件:

    pod 'Fabric'
    pod 'Crashlytics'
    

    您的 AppDelegate.m:

    #import <Fabric/Fabric.h>
    #import <Crashlytics/Answers.h>
    #import <Crashlytics/Crashlytics.h>
    
    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
        ...
        [Fabric with:@[[Crashlytics class], [Answers class]]];
        ...
    }
    

    【讨论】:

    • 对于 swift 仅导入 Fabric 和 Crashlytics,因为 Answers 对象包含在 Crashlytics 中:)
    猜你喜欢
    • 2019-08-26
    • 2011-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-16
    • 2013-02-26
    • 2016-04-21
    • 1970-01-01
    相关资源
    最近更新 更多