将 Firebase 与 tvOS 结合使用
Using Firebase with tvOS
当我尝试将 Firebase 框架与 tvOS(通过 cocoapods)结合使用时,出现以下错误:
Target 'Pods-Portal TV' of project 'Pods' was rejected as an implicit dependency for 'Pods_Portal_TV.framework' because it doesn't contain platform 'appletvsimulator' in its SUPPORTED_PLATFORMS 'iphonesimulator, iphoneos'
我 'tricked' 通过将目标声明为 :ios
.
来安装框架,因为它无法将 tvOS 识别为受支持的平台
所以很容易看出问题所在。我的问题:在 Firebase 正式支持 tvOS 之前是否可以解决此问题?
好的,所以我让它工作了,尽管有点不稳定。
在撰写本文时,这是一个非常快速的指南。
首先你需要将 CocoaPods 设置为 use unreleased features 并获取 cocoapods / cocoapods-core 的 master 分支
那么你需要create a private spec repo or use mine
请记住将您的 xcode 路径设置为 xcode sudo xcode-select -s /Applications/Xcode-Beta.app/Contents/Developer
的 Beta 版本,否则规范将无法构建。
然后将您的 source
设置为您的规范文件,并在您的 Podfile 中将平台设置为 platform :tvos, '9.0'
,然后 pod install
。
然后您的项目应该会生成并 运行,但有大约 155 个警告:
ld: warning: URGENT: building for tvOS simulator, but linking in object file (/Users/..../..../.... /tvOS/Pods/Firebase/Firebase.framework/Firebase(FPendingPut.o)) built for iOS. Note: This will be an error in the future.
所以显然不是一个可靠的解决方案。绝对不是生产解决方案。但希望 Firebase 将来会增加支持。我与 Firebase 团队的 Frank 交谈过,他说他将在下一次功能讨论中讨论它,看看他们是否想包括它。希望他们会:)
此外,出于某种原因,我不得不在 FAuthData.h 中注释掉 Accounts/Accounts.h
导入语句?不知道有没有人能详细说说
编辑 (8/5/17):tvOS 支持正在添加到 open source Firebase SDK in issue #10。请跟随并投稿!
这里是 Firebase 开发人员。
我已经为 tvOS 构建了 Firebase 框架的测试版,我很乐意与人们分享,以便他们提供反馈。请通过 mcdonald firebase com 给我发电子邮件以获取访问权限。
编辑 (7/28/16):鉴于此 post 的日期和 2016 年 Google I/O 巨大的 Firebase 版本,我应该有一些额外的警告添加到这个库的功能。
- 这是 2.x 客户端的一个版本,将在所有项目中使用数据库。但是,身份验证不适用于 2016 年 5 月 18 日之后创建的项目。
- 此客户端与 Nest 不兼容,因为 Nest 仅支持 1.x Firebase 客户端。
编辑 (8/27/16):请填写 this form 让我们知道您希望在其他平台(macOS、tvOS、watchOS)上支持 Firebase。
编辑 (10/29/21):Firebase 8.9.0 引入了对 macOS、tvOS 和 Catalyst 的官方测试版支持。 watchOS 继续得到社区支持。
最近从开源社区获得了一些进展,我 auth/database 一两个小时后才开始工作,主要是与 podfile 作斗争。似乎有效,查看 https://github.com/firebase/firebase-ios-sdk#community-supported-efforts
当我尝试将 Firebase 框架与 tvOS(通过 cocoapods)结合使用时,出现以下错误:
Target 'Pods-Portal TV' of project 'Pods' was rejected as an implicit dependency for 'Pods_Portal_TV.framework' because it doesn't contain platform 'appletvsimulator' in its SUPPORTED_PLATFORMS 'iphonesimulator, iphoneos'
我 'tricked' 通过将目标声明为 :ios
.
所以很容易看出问题所在。我的问题:在 Firebase 正式支持 tvOS 之前是否可以解决此问题?
好的,所以我让它工作了,尽管有点不稳定。
在撰写本文时,这是一个非常快速的指南。
首先你需要将 CocoaPods 设置为 use unreleased features 并获取 cocoapods / cocoapods-core 的 master 分支
那么你需要create a private spec repo or use mine
请记住将您的 xcode 路径设置为 xcode sudo xcode-select -s /Applications/Xcode-Beta.app/Contents/Developer
的 Beta 版本,否则规范将无法构建。
然后将您的 source
设置为您的规范文件,并在您的 Podfile 中将平台设置为 platform :tvos, '9.0'
,然后 pod install
。
然后您的项目应该会生成并 运行,但有大约 155 个警告:
ld: warning: URGENT: building for tvOS simulator, but linking in object file (/Users/..../..../.... /tvOS/Pods/Firebase/Firebase.framework/Firebase(FPendingPut.o)) built for iOS. Note: This will be an error in the future.
所以显然不是一个可靠的解决方案。绝对不是生产解决方案。但希望 Firebase 将来会增加支持。我与 Firebase 团队的 Frank 交谈过,他说他将在下一次功能讨论中讨论它,看看他们是否想包括它。希望他们会:)
此外,出于某种原因,我不得不在 FAuthData.h 中注释掉 Accounts/Accounts.h
导入语句?不知道有没有人能详细说说
编辑 (8/5/17):tvOS 支持正在添加到 open source Firebase SDK in issue #10。请跟随并投稿!
这里是 Firebase 开发人员。
我已经为 tvOS 构建了 Firebase 框架的测试版,我很乐意与人们分享,以便他们提供反馈。请通过 mcdonald firebase com 给我发电子邮件以获取访问权限。
编辑 (7/28/16):鉴于此 post 的日期和 2016 年 Google I/O 巨大的 Firebase 版本,我应该有一些额外的警告添加到这个库的功能。
- 这是 2.x 客户端的一个版本,将在所有项目中使用数据库。但是,身份验证不适用于 2016 年 5 月 18 日之后创建的项目。
- 此客户端与 Nest 不兼容,因为 Nest 仅支持 1.x Firebase 客户端。
编辑 (8/27/16):请填写 this form 让我们知道您希望在其他平台(macOS、tvOS、watchOS)上支持 Firebase。
编辑 (10/29/21):Firebase 8.9.0 引入了对 macOS、tvOS 和 Catalyst 的官方测试版支持。 watchOS 继续得到社区支持。
最近从开源社区获得了一些进展,我 auth/database 一两个小时后才开始工作,主要是与 podfile 作斗争。似乎有效,查看 https://github.com/firebase/firebase-ios-sdk#community-supported-efforts