【发布时间】:2014-12-20 08:50:50
【问题描述】:
在我正在开发的应用程序中(使用 Xcode 6.1,适用于 iOS 7&8),我使用 Card IO 捕获信用卡信息并使用 Braintree 作为付款方式。当我包含 Card IO iOS SDK 以及由 Cocoapods 导入的 Braintree iOS SDK 时出现问题,我得到了错误:
重复符号 _OBJC_CLASS_$_CardIOCreditCardInfo 在: /MyApp/Pods/Braintree/Braintree/PayPal/mSDK/libPayPalMobile.a(libCardIO.a-armv7-master.o) /MyApp/CardIO/libCardIO.a(libCardIO.a-armv7-master.o) 重复符号 _OBJC_CLASS_$_CardIOPaymentViewController 在: /MyApp/Pods/Braintree/Braintree/PayPal/mSDK/libPayPalMobile.a(libCardIO.a-armv7-master.o) /MyApp/CardIO/libCardIO.a(libCardIO.a-armv7-master.o) 重复符号 _OBJC_CLASS_$_CardIOView 在: /MyApp/Braintree/Braintree/PayPal/mSDK/libPayPalMobile.a(libCardIO.a-armv7-master.o) /MyApp/CardIO/libCardIO.a(libCardIO.a-armv7-master.o) 重复符号 _OBJC_METACLASS_$_CardIOCreditCardInfo 在: /MyApp/Pods/Braintree/Braintree/PayPal/mSDK/libPayPalMobile.a(libCardIO.a-armv7-master.o) /MyApp/CardIO/libCardIO.a(libCardIO.a-armv7-master.o) 重复符号 _OBJC_METACLASS_$_CardIOPaymentViewController 在: /MyApp/Pods/Braintree/Braintree/PayPal/mSDK/libPayPalMobile.a(libCardIO.a-armv7-master.o) /MyApp/CardIO/libCardIO.a(libCardIO.a-armv7-master.o) 重复符号 _OBJC_METACLASS_$_CardIOView 在: /MyApp/Pods/Braintree/Braintree/PayPal/mSDK/libPayPalMobile.a(libCardIO.a-armv7-master.o) /MyApp/CardIO/libCardIO.a(libCardIO.a-armv7-master.o) ld:架构 armv7 的 6 个重复符号 clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)
原来 Braintree 包含 Paypay SDK,其中已经包含 CardIO 的库。
我试过了
1)删除(remove reference) CardIO文件夹下的libCardIO.a,APP可以编译运行,但是CardIO的view controller和camera无法正常打开。
2)从 Braintree 中删除(删除引用)Paypal 文件夹,出现以下错误。
架构 armv7 的未定义符号:
“_OBJC_CLASS_$_BTPayPalButton”,引用自: libPods-Vinyo-2-Braintree.a(Braintree.o) "_OBJC_CLASS_$_BTPayPalViewController" 中的 objc-class-ref,引用自: libPods-Vinyo-2-Braintree.a(BTPaymentProvider.o) 中的 objc-class-ref
“_OBJC_CLASS_$_BTPayPalAppSwitchHandler”,引用自: libPods-Vinyo-2-Braintree.a(BTPaymentProvider.o) 中的 objc-class-ref libPods-Vinyo-2-Braintree.a(Braintree.o) ld 中的 objc-class-ref:未找到架构 armv7 clang 的符号:错误:链接器 命令失败,退出代码为 1(使用 -v 查看调用)
寻找一种可行且安全的方法来正确集成这两个 SDK 并使其工作。任何想法表示赞赏!提前谢谢!
【问题讨论】:
标签: ios paypal braintree card.io