I'm not an iOS dev but I'm in charge of compiling a new build of an iOS app but when I'm launching the command pod install. Pod generates an error like that.
[!] Unable to satisfy the following requirements:
XMLDictionary (= 1.4.0) required by Podfile.lock
XMLDictionary (~> 1.4.0) required by AWSCore (2.1.2)
I try to edit directly the Podfile.lock by changing XMLDictionnary version by (~> 1.4.0) but, obviously it does not work. Can someone help me to solve that dependency errors ?
Many thanks in advance.
[EDIT] As recommanded in comments. I already done the pod update command.
But it return me the following error.
[!] Unable to satisfy the following requirements:
XMLDictionary (~> 1.4.0) required by AWSCore (2.1.2)
Related
I am trying to build a simple Cordova app for iOS, but running pod install fails with the following error:
[!] CocoaPods could not find compatible versions for pod "FBSDKCoreKit":
In Podfile:
CordovaPluginsStatic (from `../capacitor-cordova-ios-plugins`) was resolved to 2.4.2, which depends on
FBSDKCoreKit (= 5.15.0)
CordovaPluginsStatic (from `../capacitor-cordova-ios-plugins`) was resolved to 2.4.2, which depends on
FBSDKShareKit (= 5.15.0) was resolved to 5.15.0, which depends on
FBSDKShareKit/Share (= 5.15.0) was resolved to 5.15.0, which depends on
FBSDKCoreKit (~> 5.0)
As far as I understand, FBSDKCoreKit (~> 5.0) should actually match = 5.15.0 so it looks like CocoaPods fails to figure this out.
How do I troubleshoot this?
CocoaPods: 1.10.0
So I tried to install ML Kit Face Detection library by following this documentation, so first I added this line in my podfile:
pod 'GoogleMLKit/FaceDetection'
Unfortunately after I tried to install it I got this error on terminal:
[!] CocoaPods could not find compatible versions for pod "GoogleDataTransportCCTSupport": In snapshot (Podfile.lock):
GoogleDataTransportCCTSupport (= 2.0.1, ~> 2.0)
In Podfile:
GoogleMLKit/FaceDetection was resolved to 0.60.0, which depends on
GoogleMLKit/MLKitCore (= 0.60.0) was resolved to 0.60.0, which depends on
MLKitCommon (~> 0.60.0) was resolved to 0.60.0, which depends on
GoogleDataTransportCCTSupport (~> 1.2)
Specs satisfying the `GoogleDataTransportCCTSupport (= 2.0.1, ~> 2.0), GoogleDataTransportCCTSupport (~> 1.2)` dependency were found, but they required a higher minimum deployment target.
And I added more pod like this:
pod 'MLKitCommon'
pod 'GoogleMLKit/MLKitCore'
But now I got this error on the terminal:
[!] CocoaPods could not find compatible versions for pod "GoogleDataTransport":
In snapshot (Podfile.lock):
GoogleDataTransport (= 5.1.0, ~> 5.1)
In Podfile:
GoogleMLKit/MLKitCore was resolved to 0.60.0, which depends on
MLKitCommon (~> 0.60.0) was resolved to 0.60.0, which depends on
GoogleDataTransport (~> 3.2)
Specs satisfying the `GoogleDataTransport (= 5.1.0, ~> 5.1), GoogleDataTransport (~> 3.2)` dependency were found, but they required a higher minimum deployment target.
After a bit of research I tried to run pod install --repo-update but it still give me that error. Is there anyway to resolve this?
This fixed the problem for me:
pod deintegrate
sudo gem install cocoapods-clean
pod clean
pod setup
pod install
I deleted Podfile.lock and ran pod install. Worked.
The above two methods did not work for me. I was using Firebase "cloud_firestore: 2.2.0" with "google_ml_kit: ^0.6.0". Turns out cloud firestore(2.2.0) requires FirebaseSDK version 8.0.0. I had to downgrade to 2.0.0 and pasted "$FirebaseSDKVersion = '7.11.0'" at the start of my podfile at ios/Podfile. Here's a link to the issue.
I am getting EXC_BAD_ACCESS after including 'Firebase/Auth' in Podfile. This happens without adding any line of firebase code. I am using swift3 on xcode 8 and the resultant pods are -
Installing Firebase (3.8.0)
Installing FirebaseAnalytics (3.5.1)
Installing FirebaseAuth (3.0.6)
Installing FirebaseCore (3.4.4)
Installing FirebaseInstanceID (1.0.8)
Using GTMOAuth2 (1.1.4)
Using GTMSessionFetcher (1.1.7)
Using GoogleAppUtilities (1.1.2)
Installing GoogleInterchangeUtilities (1.2.2)
Using GoogleSignIn (4.0.1)
Using GoogleSymbolUtilities (1.1.2)
Installing GoogleToolboxForMac 2.1.0 (was 2.1.0)
Using Localize-Swift (1.6)
Using ProtocolBuffers-Swift (3.0.6)
Using QorumLogs (0.9)
The error comes in Thread 1 in [UIViewController(FIRAScreenClassName) fira_viewDidAppear:]:
This happens only if the pod target is itself a framework which is embedded in an app eventually.
I do have Google analytics as well. Is it because ARC is not enabled? How do I do that on xcode-8?
Any other options to try?
There appears to be a problem in the latest Firebase/Core (3.8.0) release. Even #IBDesignable was crashing with a recursive call to the method signature you mentioned.
You have a couple of options:
In Info.plist (app), set FirebaseAutomaticScreenReportingEnabled to NO (bool). This solved the problem for my running application, but IBDesignable resources caused this error on build:
file:///path/to/project/Base.lproj/Main.storyboard: error: IB Designables: Failed to render and update auto layout status for UIViewController (svZ-78-1Mn): The agent crashed
You may want to temporarily downgrade to 3.7.1, for example,
pod 'Firebase/Core', '~> 3.7.1'
pod 'Firebase/Auth'
pod 'Firebase/Database'
The rest of the dependencies should take care of themselves when you run pod update.
I made a silly mistake. Never turned on Google under Authentication -> Sign in methods on Firebase
I am suspecting that the Podfile is not correct. I got into similar problem by adding Firebase dependency into a framework and I ran into the problem like this
objc[12345]: Class FIRAAppEnvironmentUtil is implemented in both
/Users/...Build/Products/Debug-iphonesimulator/SomeFramework.framework/SomeFramework
(0x105ef7fc8) and /Users/.../CurrentProject.app/CurrentProject
(0x105945108). One of the two will be used. Which one is undefined.
As mentioned in this post, you might have duplicate dependencies in different targets which could lead to weird bug like this. Adding Firebase pod into the main target and removing the Firebase pod from the framework fixed the problem for me.
I've just included the Google Analytics Pod as described in their iOS developer guide with:
pod 'Google/Analytics'
When running
pod install
it installs the following dependencies:
Installing FirebaseAnalytics (3.2.0)
Installing FirebaseInstanceID (1.0.6)
Installing Google (3.0.3)
Installing GoogleAnalytics (3.14.0)
Installing GoogleInterchangeUtilities (1.2.1)
Installing GoogleSymbolUtilities (1.1.1)
Installing GoogleUtilities (1.3.1)
Since I don't use Firebase, I would like to get rid of the FirebaseAnalytics and FirebaseInstanceID (as well as all pods that are not needed by the framework itself).
Installing unused dependencies only bloats up my app size. I would like to only install the absolute minimum amount of pods to get GoogleAnalytics running.
Any ideas on how to kick the unused Pods out?
As seen in this answer, you can use:
pod 'GoogleAnalytics'
…to avoid installing the dependencies. Note that you'll need to change your Objective-C imports in your bridging header file; I needed at least:
#import <GoogleAnalytics/GAI.h>
#import <GoogleAnalytics/GAIFields.h>
#import <GoogleAnalytics/GAIDictionaryBuilder.h>
In Pod it is showing like this.
libGTM_NSData+zlib_external.a
While in Build settings, it looks as below
$(PODS_ROOT)/GoogleUtilities/Libraries/libGTM_NSData+zlib.a
In config, it shows as this.
-force_load $(PODS_ROOT)/GoogleUtilities/Libraries/libGTM_NSData+zlib_external.a
How can I remove error of not finding libGTM_NSData+zlib.a as I know new google library has libGTM_NSData+zlib_external.a only.
I am using
pod 'Google/Analytics'
pod 'Google/SignIn'
in my Pod file.
Kindly give proper structure of removing such issue. I tried to rename and keeping all of same name as _external, it didn't solve the problem.
Final installation of Pods via Terminal shows Log as below
Analyzing dependencies
Downloading dependencies
Installing AFNetworking (2.6.3)
Installing AMScrollingNavbar (1.5.1)
Installing Bolts (1.7.0)
Installing ChartboostSDK (6.4.0)
Installing Charts (2.2.4)
Installing Crashlytics (3.7.0)
Installing Fabric (1.6.7)
Installing Google (2.0.3)
Installing Google-Mobile-Ads-SDK (7.7.1)
Installing GoogleAnalytics (3.14.0)
Installing GoogleAppUtilities (1.1.0)
Installing GoogleAuthUtilities (2.0.0)
Installing GoogleInterchangeUtilities (1.2.0)
Installing GoogleNetworkingUtilities (1.2.0)
Installing GoogleSignIn (3.0.0)
Installing GoogleSymbolUtilities (1.1.0)
Installing GoogleUtilities (1.2.0)
Installing MMDrawerController (0.5.7)
Installing Optimizely-iOS-SDK (1.4.2)
Installing Parse (1.13.0)
Installing SDWebImage (3.7.5)
Installing Shapes (1.0.2)
Installing SocketRocket (0.3.1-beta2)
Installing libPusher (1.5)
Installing pop (1.0.9)
Generating Pods project
Integrating client project
Thanks.
I had the same issue today, removing the pod cache and reinstalling from scratch did the trick for me.
close Xcode, delete pod files, then
rm -rf "${HOME}/Library/Caches/CocoaPods"
rm -rf "`pwd`/Pods/"
pod install
Open Build Settings
Go to Framework Search Paths
Leave only these two as shown in image, and remove all others, like libGTM_NSData+zlib.a or any other.
This inherited & Project Directory will cause automatically detection from Pods, and it will not more create problem for you.
pod 'Google/Analytics', '~> 2.0'
Fixed this for Google Analytics