AWSMobileHub를 사용하기 시작했으며 통합 단계를 진행하고 있지만 프로젝트에서 사용하려는 cocoapods와 잘 작동하지 않습니다.awsmobilehub 및 cocoapods 통합
나는 통합 단계를 따라 aws + 헬퍼 코드에서 다운로드 한 프레임 워크를 추가했다.
그래서
이 컴파일 같은 임베디드 프레임 워크로 추가하고
가 그럼 난 포드 프로젝트에 cocoapods를 추가
잘 실행했다 init, podfile을 다음과 같이 수정하고 저작물을 만든다. 공간.source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '9.0'
use_frameworks!
target 'ProjectName' do
project 'ProjectName'
pod 'Fabric'
pod 'Crashlytics'
end
다음으로 pod install을 추가하면 podfile에 추가 한 프레임 워크가 추가됩니다.
하지만 지금 컴파일하면 다음과 같은 오류가 발생합니다.
Undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_AWSS3PreSignedURLBuilder", referenced from:
objc-class-ref in AWSMobileHubHelper(AWSContentManager.o)
"_OBJC_CLASS_$_AWSS3ListObjectsOutput", referenced from:
objc-class-ref in AWSMobileHubHelper(AWSContentManager.o)
"_OBJC_CLASS_$_AWSS3GetPreSignedURLRequest", referenced from:
objc-class-ref in AWSMobileHubHelper(AWSContentManager.o)
"_OBJC_CLASS_$_AWSS3", referenced from:
objc-class-ref in AWSMobileHubHelper(AWSContentManager.o)
(maybe you meant: _OBJC_CLASS_$_AWSS3ContentProvider)
"_OBJC_CLASS_$_FBSDKLoginManager", referenced from:
objc-class-ref in AWSMobileHubHelper(AWSFacebookSignInProvider.o)
"_OBJC_CLASS_$_AWSLambdaInvoker", referenced from:
objc-class-ref in AWSMobileHubHelper(AWSCloudLogic.o)
"_OBJC_CLASS_$_AWSSNSGetEndpointAttributesInput", referenced from:
objc-class-ref in AWSMobileHubHelper(AWSPushManager.o)
"_OBJC_CLASS_$_FBSDKApplicationDelegate", referenced from:
objc-class-ref in AWSMobileHubHelper(AWSFacebookSignInProvider.o)
"_OBJC_CLASS_$_AWSSNSSubscribeInput", referenced from:
objc-class-ref in AWSMobileHubHelper(AWSPushManager.o)
"_OBJC_CLASS_$_GIDSignIn", referenced from:
objc-class-ref in AWSMobileHubHelper(AWSGoogleSignInProvider.o)
"_OBJC_CLASS_$_AWSSNSSetEndpointAttributesInput", referenced from:
objc-class-ref in AWSMobileHubHelper(AWSPushManager.o)
"_OBJC_CLASS_$_FBSDKAccessToken", referenced from:
objc-class-ref in AWSMobileHubHelper(AWSFacebookSignInProvider.o)
"_OBJC_CLASS_$_AWSSNS", referenced from:
objc-class-ref in AWSMobileHubHelper(AWSPushManager.o)
"_OBJC_CLASS_$_FBSDKGraphRequest", referenced from:
objc-class-ref in AWSMobileHubHelper(AWSFacebookSignInProvider.o)
"_OBJC_CLASS_$_AWSS3ListObjectsRequest", referenced from:
objc-class-ref in AWSMobileHubHelper(AWSContentManager.o)
"_OBJC_CLASS_$_AWSSNSCreatePlatformEndpointInput", referenced from:
objc-class-ref in AWSMobileHubHelper(AWSPushManager.o)
"_OBJC_CLASS_$_AWSSNSUnsubscribeInput", referenced from:
objc-class-ref in AWSMobileHubHelper(AWSPushManager.o)
"_AWSSNSErrorDomain", referenced from:
___88-[AWSPushManager interceptApplication:didRegisterForRemoteNotificationsWithDeviceToken:]_block_invoke.237 in AWSMobileHubHelper(AWSPushManager.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
내가 포함 된 프레임 워크를 제거하고 podfile에 추가하면
대신 나는 같은 오류를 얻을.이 디버그에 대한 내 다른 링커 플래그
//:configuration = Debug
OTHER_LDFLAGS = $(inherited) -l"c++"
-l"sqlite3"
-l"stdc++"
-l"z"
-framework "AVFoundation"
-framework "AWSCognitoIdentityProvider"
-framework "AWSCore"
-framework "AddressBook"
-framework "AssetsLibrary"
-framework "CFNetwork"
-framework "CoreFoundation"
-framework "CoreGraphics"
-framework "CoreLocation"
-framework "CoreMedia"
-framework "CoreMotion"
-framework "CoreText"
-framework "CoreVideo"
-framework "MessageUI"
-framework "QuartzCore"
-framework "SafariServices"
-framework "Security"
-framework "StoreKit"
-framework "SystemConfiguration"
-framework "UIKit"
//:completeSettings = none
편집을 구축 할 수 있습니다 : 어떤 프레임 워크가 잘 cocoapods에 추가 할 수 있다는 나타납니다
문제가 프레임 워크가 -ObjC을 필요로 할 때 발생하는 것 같습니다 다른 링커 플래그
OTHER_LDFLAGS = $(inherited) -ObjC -l"z" -framework "AFNetworking" -framework "AWSCognitoIdentityProvider" -framework "AWSCore" -framework "Bolts" -framework "CFNetwork" -framework "CoreGraphics" -framework "FBSDKCoreKit" -framework "FBSDKLoginKit" -framework "PureLayout" -framework "QuartzCore" -framework "Reveal"
위
pod.debug.xcconfig 파일에 추가 할
나는 AWS로 컴파일 미세 다음 추가 할 때 예
하지만 내가 추가 할 경우이 -ObjC에 추가하고 원인 다음 모든 오류
pod 'Reveal-iOS-SDK', :configurations => ['Debug']
로
pod 'FBSDKCoreKit'
pod 'FBSDKLoginKit'
pod 'PureLayout'
pod 'AFNetworking', '3.1.0'
이러한 프레임 워크를 함께 사용하기 위해 내가해야 할 아이디어가 있습니까? 내가 AWSMobileHub "MySampleApp"
편집 2와 함께 제공되는 샘플 응용 프로그램에 포드 파일로 밝혀 추가하려고하면
같은 상황이 발생합니다 나는 AWSMobileHubHelper.framework 들어있는 AMazonAws 폴더를 제거하고 컴파일 할 때 그냥 aws 파일을 cocoapods에서 잘 작동합니다. 이 문제는 AmazonAws 폴더가 추가 될 때 발생하는 것으로 보입니다.
기존 프로그램에 AWSCognito를 추가 할 때도 동일한 오류가 발생합니다. 문제를 해결 했습니까? – user3239711
@ user3239711 죄송합니다. AWS 프레임 워크를 임베드해야하고 항상 포드 업데이트를 실행 한 후 포드 xcconfig 파일에서 -ObjC를 제거해야합니다. – glogic