2016-03-28 6 views
2

Ich habe eine iOS-Anwendung, die direkt auf die AWS Mobile-Frameworks und mehrere andere CocaoPods-Bibliotheken verweist. Das Projekt baut gut auf und ich kann ohne Probleme eine Verbindung zu AWS herstellen.iOS-Buildfehler beim Verwenden von PayPal Mobile SDK

Allerdings, wenn ich die 'PayPal-iOS-SDK' als zusätzliche Bibliothek Referenz in der PodFile hinzufügen und führen pod installiere ich mehrere build/Linker Fehler erhalten:

Undefined symbols for architecture x86_64: 
    "_AWSSNSErrorDomain", referenced from: 
    ___88-[AWSPushManager interceptApplication:didRegisterForRemoteNotificationsWithDeviceToken:]_block_invoke239 in AWSMobileHubHelper(AWSPushManager.o) 
    "_OBJC_CLASS_$_AWSLambdaInvoker", referenced from: 
    objc-class-ref in AWSMobileHubHelper(AWSCloudLogic.o) 
    "_OBJC_CLASS_$_AWSSNS", referenced from: 
    objc-class-ref in AWSMobileHubHelper(AWSPushManager.o) 
    "_OBJC_CLASS_$_AWSSNSCreatePlatformEndpointInput", referenced from: 
    objc-class-ref in AWSMobileHubHelper(AWSPushManager.o) 
    "_OBJC_CLASS_$_AWSSNSGetEndpointAttributesInput", referenced from: 
    objc-class-ref in AWSMobileHubHelper(AWSPushManager.o) 
    "_OBJC_CLASS_$_AWSSNSSetEndpointAttributesInput", referenced from: 
    objc-class-ref in AWSMobileHubHelper(AWSPushManager.o) 
    "_OBJC_CLASS_$_AWSSNSSubscribeInput", referenced from: 
    objc-class-ref in AWSMobileHubHelper(AWSPushManager.o) 
    "_OBJC_CLASS_$_AWSSNSUnsubscribeInput", referenced from: 
    objc-class-ref in AWSMobileHubHelper(AWSPushManager.o) 
    "_OBJC_CLASS_$_GIDSignIn", referenced from: 
    objc-class-ref in AWSMobileHubHelper(AWSGoogleSignInProvider.o) 
ld: symbol(s) not found for architecture x86_64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

Wenn ich die entfernen - ObjC-Flag aus der Build-Einstellung für andere Linker-Flags, die ich erstellen kann, aber nicht auf das PayPal-Framework verweisen kann, da dies von dieser Einstellung abhängt.

Ich habe auch versucht mit -force_load anstelle von -ObjC, aber nicht erfolgreich, um dies zu bauen entweder.

Ich habe versucht, PayPal über eine direkte Referenz anstelle von CocoaPods zu integrieren, aber das -ObjC-Flag ist immer noch für diese Art der Integration erforderlich, und dies führt zu den gleichen Fehlern wie oben.

Haben Sie Ideen zur Verwendung des AWS Mobile SDK im selben Projekt wie das PayPal iOS SDK?

+0

Hallo, könnten Sie die force_load Einstellung teilen, die Sie versucht haben? Auf welches Ziel haben Sie den force_load eingestellt? –

+0

Es müssen einige andere Änderungen vorgenommen worden sein, die ich während der Fehlersuche vorgenommen hatte und die die Einstellung force_load beeinträchtigten. Ich habe alle Änderungen rückgängig gemacht und folgendes hinzugefügt: -force_load $ (SRCROOT) /Pods/PayPal-iOS-SDK/Core/Frameworks/libPayPalMobile.a und jetzt wird es gebaut! – outerstorm

+0

großartig! Freut mich zu hören, dass es funktioniert hat! –

Antwort

1

Entfernen Sie die -ObjC andere Linker-Flag und fügen Sie den folgenden anderen Linker-Flag:

-force_load $(SRCROOT)/Pods/PayPal-iOS-SDK/Core/Frameworks/libPayPalMobile.a 
+0

In unserem eigenen Projekt Linker Flag Pod Projekt Linker Flagge? –

Verwandte Themen