2017-09-27 9 views
0

내 앱에 FacebookSDK를 추가하려고하지만 일부 오류가 발생합니다. Cocoapods를 사용하여 GoogleMaps를 이미 설치했습니다.GoogleMaps SDK (호환되지 않음)로 Facebook SDK Xcode 8을 추가 할 수 없습니다.

처음에는 Facebook을 설치하기 위해 Cocoapods를 사용하려고했지만 그렇게 할 수 없습니다. 터미널에서이 오류를 표시

[!] The 'Pods-test' target has transitive dependencies that include static binaries: 

(/Users/devews/Desktop/test/Pods/GoogleMaps/Base/Frameworks/GoogleMapsBase.framework/사용자/devews/데스크탑/테스트/포드/Google지도 /지도/프레임 워크/GoogleMaps.framework 및 /Users/devews/Desktop/test/Pods/GoogleMaps/Maps/Frameworks/GoogleMapsCore.framework) 여기

내 podfile입니다 :

source 'https://github.com/CocoaPods/Specs.git' 
target 'test' do 

# Comment the next line if you're not using Swift and don't want to 
use dynamic frameworks 
use_frameworks! 

pod 'GoogleMaps' 
pod 'Google-Maps-iOS-Utils' 
pod 'Bolts' 
pod 'FBSDKCoreKit' 
pod 'FBSDKLoginKit' 

end 

둘째, 나는 페이스 북을 추가하려고 Cocoapods도 사용하고 "use_frameworks!" 마지막 문제를 일으킬 라인, 포드 페이스 북 SDK를 설치하지만 난 AppDelegate에에 다음 줄을 가져올 때

import FBSDKCoreKit 

그것은이다 "이러한 모듈 'FBSDKCoreKit'"그래서 페이스 북 SDK는하지 않았다 정말 설치되었지만 다음 사진과 같이 프로젝트에서 볼 수 있습니다. 내가 라인 삭제의 때문에

error no such module

보인다 "use_frameworks을!" 그래서 그것은 작동하지 않습니다 podfile에.

그래서 세 번째, 나는 podfile에서 Google지도를 삭제하고 수동으로 추가하려고하지만, 어쩌면 많은 오류를 보여줍니다 때문에 누락 된 파일을하지만 난 구글 맵 문서 뒤에 있기 때문에 나도 몰라 : https://developers.google.com/maps/documentation/ios-sdk/start?hl=fr

을 마지막으로 podfile에 GoogleMaps를 다시 설치하고 podfile에서 Facebook SDK를 삭제 한 다음 Facebook 설명서에 표시된대로 수동으로 Facebook SDK를 추가합니다. "Framework Search Paths"에 ~/Documents/FacebookSDK를 추가하려고했으나 아무 것도 바뀌지 않았고 아무것도 작동하지 않는 것 같습니다. 나는 FBSDKCoreKit이 시간을 가져올 필요가 없습니다 생각하지만 난 AppDelegate에에 다음 줄을 추가 할 때 :

다음
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { 
    GMSServices.provideAPIKey("AIzaSyCnSxY__6RFFzp2pJbQoLj8vAQrkWb2byA") 
    FBSDKApplicationDelegate.sharedInstance().application(application, didFinishLaunchingWithOptions: launchOptions) 
return true 
} 

두 가지 오류 아주 이상한 나타납니다 :

error FB SDK

난을 클릭하면 이 두 가지 오류는 아무 일도 일어나지 않습니다. 그래서 나는이 다음과 같은 새로운 목표 - C 파일 호출 "시험 브리징 - 머리글을 쓰기 :.

// Use this file to import your target's public headers that you would like to expose to Swift. 

#import <Google-Maps-iOS-Utils/GMUMarkerClustering.h> 
#import "GMSMapView+ClusterKit.h" 
#import <FBSDKCoreKit/FBSDKCoreKit.h> 
#import <FBSDKLoginKit/FBSDKLoginKit.h> 

그러나 같은 문제가, 아무것도 나를 위해 작동하지 수 있다면

사람은 방법을 알고 그 큰 문제를 해결하려면 내 앱 내에서 FacebookSDK 및 GoogleMaps SDK를 사용하고 싶고 불가능한 것 같습니다. 인터넷에서 많은 것을 검색하지만 아무 것도 작동하지 않습니다.

답변

0

Google지도는 정적이며 Facebook은에 있습니다. 동적이므로 Cocoapods와 함께 설치할 수는 없습니다. 설치하는 경우 Cocoapods로 GoogleMaps를 만들고 수동으로 FacebookSDK를 추가하는 것이 더 좋은 방법입니다. 마지막 문제를 해결하려면 다음을 수행하십시오.

프로젝트 이름에서 먼저 프로젝트 네비게이터를 클릭해야합니다. 그러면 Xcode 구석의 왼쪽 상단에 파란색 아이콘이있는 "테스트" "Build settings"섹션에서 검색 필드에 "Framework Search Paths"를 검색 한 다음 여기를 두 번 클릭하고 Mac에 Facebook SDK의 올바른 경로를 추가하십시오. 우리의 문서 폴더에 FacebookSDK을 넣어) 그래서 그냥이 다음 경로 쓰기 : 당신이 볼 "페이즈를 구축"할 수 있습니다 "빌드 설정"의 오른쪽에,

/Users/$(USER)/Documents/FacebookSDK 

두 번째 일을, 당신은 CLI 다음, 그것을 클릭 ck "Link With Binary With Libraries"에서 프로젝트에 드래그 앤 드롭하여 이미 추가 한 것과 동일한 프레임 워크를 추가하면됩니다. 따라서 + 버튼을 클릭하고 Bolts.framework, FBSDKCoreKit.framework, FBSDKLoginKit.framework 및 FBSDKShareKit.framework를 추가하십시오.

세 번째 것은, 당신은 브리징-header.h가를 유지할 수 있습니다 사용자가 만든 가져올 파일 :

#import <FBSDKCoreKit/FBSDKCoreKit.h> 
#import <FBSDKLoginKit/FBSDKLoginKit.h> 

그리고 괜찮아. 호프가 도움이되기를 바랍니다.

+0

이 답변을 주셔서 감사합니다. 내 문제가 해결되었습니다. –