amazon-web-services - AWSAppSync 和 AWSMobileClient 不兼容
问题描述
我正在尝试安装AWSAppSync
并安装AWSMobileClient
到我的 ios 应用程序。当我想使用 pod install 时。
我尝试仅使用 AWSAppSync 或 AWSMobileClient。它们单独使用时很好,但它们不能在同一个 pod 文件中工作。我还尝试了不同版本的 AWSAppSync 和 AWSCore。AWSCore 2.7.0 或 2.8.0 在这种情况下没有任何区别。不同版本的 AWSAppSync 返回相同的错误。
#installed
#pod 'AWSCore', '~> 2.8.0'
pod 'AWSAppSync', '~> 2.6.24'
pod 'AWSMobileClient', '~> 2.8.0'
pod 'AWSAuthUI', '~> 2.8.0'
pod 'AWSUserPoolsSignIn', '~> 2.8.0'
这是返回的内容:
[!] CocoaPods could not find compatible versions for pod "AWSCore":
In snapshot (Podfile.lock):
AWSCore (= 2.7.4, ~> 2.7.0)
In Podfile:
AWSAppSync (~> 2.6.24) was resolved to 2.6.25, which depends on
AWSCore (~> 2.7.0)
AWSMobileClient (~> 2.8.0) was resolved to 2.8.0, which depends on
AWSAuthCore (= 2.8.0) was resolved to 2.8.0, which depends on
AWSCore (= 2.8.0)
解决方案
一般来说,需要使用兼容版本的 AWSAppSync 和 AWSiOSSDK(提供 AWSCore、AWSMobileClient 等)。最好的方法是让已解析的依赖项从您要使用的 AWSAppSync 版本流出。例如,如果您使用的是 AppSync 2.6.24,那么您应该使用~> 2.6.0
依赖库的版本。由于您似乎想要使用 AWSMobileClient 进行身份验证,因此您需要将 AWSAppSync 升级到较新的版本。
您在使用最新的 AWSAppSync 版本 (2.8.0) 时仍然遇到问题吗?我已经成功地将它与最新的 AWSMobileClient (2.8.1) 一起使用。并且可以肯定的是,您是pod repo update
在 之前发布pod install
,还是在调用pod install --repo-update
以确保 Spec repo 是最新的?这是我在使用 AWSAppSync 的应用程序中成功使用的配置:
target 'PostsApp' do
use_frameworks!
pod 'AWSAppSync', '~> 2.8.0'
pod 'AWSMobileClient', '~> 2.8.0'
pod 'AWSAuthUI', '~> 2.8.0'
pod 'AWSUserPoolsSignIn', '~> 2.8.0'
end
解析为以下内容(取自 Podfile.lock):
PODS:
- AWSAppSync (2.8.0):
- AWSCore (~> 2.8.0)
- ReachabilitySwift (~> 4.3.0)
- SQLite.swift (= 0.11.5)
- AWSAuthCore (2.8.1):
- AWSCore (= 2.8.1)
- AWSAuthUI (2.8.1):
- AWSAuthCore (= 2.8.1)
- AWSCore (= 2.8.1)
- AWSCognitoIdentityProvider (2.8.1):
- AWSCognitoIdentityProviderASF (= 1.0.1)
- AWSCore (= 2.8.1)
- AWSCognitoIdentityProviderASF (1.0.1)
- AWSCore (2.8.1)
- AWSMobileClient (2.8.1):
- AWSAuthCore (= 2.8.1)
- AWSCognitoIdentityProvider (= 2.8.1)
- AWSUserPoolsSignIn (2.8.1):
- AWSAuthCore (= 2.8.1)
- AWSCognitoIdentityProvider (= 2.8.1)
- ReachabilitySwift (4.3.0)
- SQLite.swift (0.11.5):
- SQLite.swift/standard (= 0.11.5)
- SQLite.swift/standard (0.11.5)
推荐阅读
- ionic-framework - 我在 ionic 3 应用程序中显示媒体时遇到问题
- azure - 使用队列而不是主题和订阅有什么意义吗?
- javascript - Vuetify v-select 值不返回键
- python - 为什么在使用 Gmail API python 导入电子邮件时 mime 部分变为“0”?
- swift - NSPersistentDocument 和文件菜单项
- python - Pyomo:超出 Ipopt 最大迭代次数
- sql - 如何使用命名参数而不是使用 jOOQ 的问号
- python-3.x - 如何将子数组保存在 npy 文件中?
- javascript - ChartJs 不会显示第三个坏的,但我可以看到有数据?
- python - 如何在 python 中使用 turtle 模块循环颜色?