我将 firestore 添加到 flutter 的 ios 部分的步骤
未创建 Pod.lock 文件
这是我的 pubspec.yaml
name: dili_platform
description: A new Flutter application.
environment:
sdk: ">=2.1.0 <3.0.0"
dependencies:
flutter:
sdk: flutter
cloud_firestore: 0.9.7
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^0.1.2
dev_dependencies:
flutter_test:
sdk: flutter
# For information on the generic Dart part of this file, …Run Code Online (Sandbox Code Playgroud) 作为快速介绍,所有涉及的 cocoapods 都保存在私人存储库中。
一些一般信息:
我已经成功配置了一个私有规范存储库,两个 Cocoapod 已发布到该存储库。我的本地存储库已按照 Cocoapod 发布的步骤进行了更新,并且我验证了预期的podspec文件是否存在。
pod repo add my_repo https://gitsite.com/my-spec-repo.git
Run Code Online (Sandbox Code Playgroud)
然后在我的机器上验证:
cd ~/.cocoapods/repos/my_repo
pod repo lint .
Run Code Online (Sandbox Code Playgroud)
我还目视验证了是否存在正确的文件和版本。
然后我将源添加到消费应用程序中,Podfile如下所示:
source 'https://gitsite.com/my-spec-repo/'
source 'https://cdn.cocoapods.org/'
Run Code Online (Sandbox Code Playgroud)
完成所有这些步骤后,一切正常,我可以安装和使用 Pod。因此,到目前为止一切都很好。
我现在正在构建一个新的私人 Cocoapod,它必须消耗我的一个私人 Pod。
在我的podspec文件中,我标记了依赖关系:
s.dependency 'my_private_pod', '~> 1.2.3'
Run Code Online (Sandbox Code Playgroud)
我还在Podfile示例应用程序中包含了一个条目。
pod 'my_private_pod', '~> 1.2.3'
Run Code Online (Sandbox Code Playgroud)
当我更新新的私有 pod 上的存储库时pod repo update,一切正常,我看到 pod 成功安装并可以查看我的项目中的文件。
然而,问题在于试图对新 pod 进行 lint 并最终达到发布它的目的。
-> my_new_private_pod (0.0.1)
- …Run Code Online (Sandbox Code Playgroud) 我即将开始开发两个新的 iOS 应用程序,它们将共享大量业务逻辑,例如整个 API 层和模型。我不想在两个项目中复制共享代码并尝试保持同步,而是想使用某种方式来共享代码。
我的第一个想法是使用 Swift Package Manager。在 Xcode 中创建新包确实很容易,但我真的不知道如何在我处理它时在两个应用程序中使用共享包的本地版本,同时也使其适用于其他开发人员(或 CI! )检查应用程序。无法真正提交具有本地路径依赖项的应用程序,因为这只适用于我,对吧?
那么,我可以在处理 2 个应用程序和该核心包时使用该核心包的本地版本,但仍然将其全部推送到 GitHub 并在 CI 上编译并为其他开发人员编译吗?或者它只能在我的机器上工作,因为它会引用本地路径?
将 Cocoapods 与私有 Pod 一起使用会让事情变得更容易,还是我会遇到与我的计算机上的本地路径依赖项完全相同的问题,但又想让它也适用于其他开发人员?
或者我应该使用包含应用程序和共享代码的单一存储库,并且让所有内容都使用相对路径?在这种情况下,monorepo 内的 SPM 包是否会有帮助,或者只是在两个应用程序中使用相对路径?
我已经尝试在“Rossetta”模式下运行终端时进行安装。但即便如此,安装还是失败。
我使用的命令:sudo gem install cocoapods
也尝试安装 Homebrew 但出现相同的错误。
我收到的错误如下:
ERROR: Loading command: install (LoadError)
dlsym(0x7fbc673521d0, Init_date_core): symbol not found - /Library/Ruby/Gems/2.6.0/gems/date-3.1.1/lib/date_core.bundle
ERROR: While executing gem ... (NoMethodError)
undefined method `invoke_with_build_args' for nil:NilClass
Run Code Online (Sandbox Code Playgroud) 我正在尝试在 MacOS Catalina (10.15.7) 上安装 Cocoapods,到目前为止这一直是一场噩梦。
我最初使用brew安装,但它是1.5.2版本,我至少需要1.9。
gem install cocoapods 给我以下错误:
我尝试了各种解决方案。我什至从https://developer.apple.com/download/more/下载命令行工具,但似乎没有任何效果。如果有人能提供帮助,我将不胜感激。
gem install cocoapods
Building native extensions. This could take a while...
ERROR: Error installing cocoapods:
ERROR: Failed to build gem native extension.
current directory: /Users/saadbashir/.gem/gems/ffi-1.15.0/ext/ffi_c
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby -I /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0 -r ./siteconf20210310-733-gidhhw.rb extconf.rb
checking for ffi.h... *** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers. Check the mkmf.log file for more details. You may
need configuration options.
Provided …Run Code Online (Sandbox Code Playgroud) 即使我有一个 podfile 和一个 podfile.lock,我仍然收到在项目目录中找不到“Podfile”的错误。我已经运行了 flutter clean、flutter pub get、pod init、flutter build iOS,但仍然收到相同的错误消息。我尝试删除 pod 文件,然后运行命令 sumo gem install cocoapod、pod install,然后 flutter build iOS,但仍然遇到相同的错误。
感谢您阅读我的问题。
\n我想问一下为什么我运行我的应用程序时会显示以下错误!
\n\n在 iPhone 12 Pro Max 上以调试模式启动 lib/main.dart...正在运行\npod install...CocoaPods 的输出:\xe2\x86\xb3\n准备中
\nRun Code Online (Sandbox Code Playgroud)Analyzing dependencies\n\nInspecting targets to integrate\n Using `ARCHS` setting to build architectures of target `Pods-Runner`: (``)\n\nFinding Podfile changes\n - Flutter\n - audioplayers\n - cloud_firestore\n - firebase_analytics\n - firebase_auth\n - firebase_core\n - google_sign_in\n - path_provider_ios\n\nFetching external sources\n-> Fetching podspec for `Flutter` from `Flutter`\n-> Fetching podspec for `audioplayers` from `.symlinks/plugins/audioplayers/ios`\n-> Fetching podspec for `cloud_firestore` from `.symlinks/plugins/cloud_firestore/ios`\ncloud_firestore: Using Firebase SDK version '8.10.0' defined in 'firebase_core'\n-> Fetching podspec for `firebase_analytics` …
我在 Unity 中构建了一个应用程序,并安装了用于身份验证、分析和数据库的 Firebase SDK。构建过程在 Unity 中运行得很好。完全没有错误。但是,当我在 Xcode 中打开该项目并尝试对其进行存档时,我收到以下错误:
ld: warning: arm64 function not 4-byte aligned: _unwind_tester from /Users/michael/Desktop/Reserve1/Libraries/libiPhone-lib.a(unwind_test_arm64.o)
Undefined symbols for architecture arm64:
"_OBJC_CLASS_$_FIRApp", referenced from:
objc-class-ref in libFirebaseCppApp.a(app_ios.mm.o)
"_OBJC_CLASS_$_FIRTransactionResult", referenced from:
objc-class-ref in libFirebaseCppDatabase.a(database_reference_ios.mm.o)
"_OBJC_CLASS_$_FIRTransactionResult", referenced from:
objc-class-ref in libFirebaseCppDatabase.a(database_reference_ios.mm.o)
"_OBJC_CLASS_$_FIRDatabase", referenced from:
objc-class-ref in libFirebaseCppDatabase.a(database_ios.mm.o)
"_OBJC_CLASS_$_FIRGameCenterAuthProvider", referenced from:
objc-class-ref in libFirebaseCppAuth.a(credential_ios.mm.o)
"_OBJC_CLASS_$_FIRGoogleAuthProvider", referenced from:
objc-class-ref in libFirebaseCppAuth.a(credential_ios.mm.o)
"_OBJC_CLASS_$_FIRPhoneAuthProvider", referenced from:
objc-class-ref in libFirebaseCppAuth.a(credential_ios.mm.o)
"_OBJC_CLASS_$_FIRPhoneAuthCredential", referenced from:
objc-class-ref in libFirebaseCppAuth.a(user_ios.mm.o)
"_OBJC_CLASS_$_FIROptions", referenced from:
objc-class-ref in libFirebaseCppApp.a(app_ios.mm.o)
"_OBJC_CLASS_$_FIROAuthProvider", referenced …Run Code Online (Sandbox Code Playgroud) 我刚来这地方。所以我想在我的Mac Pro M1上安装Ruby,但出现这个错误。而且我不知道如何解决它。
Last login: Fri Nov 4 15:37:04 on ttys000
/Users/valerianathea/.zshrc:5: unmatched "
valerianathea@valerianas-MacBook-Pro ~ % sudo gem install cocoapods
Password:
Building native extensions. This could take a while...
ERROR: Error installing cocoapods:
ERROR: Failed to build gem native extension.
current directory: /Library/Ruby/Gems/2.6.0/gems/ffi-1.15.5/ext/ffi_c
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby -I /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0 -r ./siteconf20221104-41514-zbjk3e.rb extconf.rb
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers. Check the mkmf.log file for more details. You may
need configuration …Run Code Online (Sandbox Code Playgroud)