- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在构建一个主要使用 swift 的 React Native Cocoapod 库。
我很难获得正确的 podspec 和 podfile 组合以避免在运行时出现重新定义警告
我的应用程序的 Podfile
install! 'cocoapods', :deterministic_uuids => false
platform :ios, '11.0'
use_modular_headers!
target 'chowchow' do
pod 'React', :path => '../node_modules/react-native', :subspecs => [
'Core',
'ART',
'CxxBridge', # Include this for RN >= 0.47
'DevSupport', # Include this to enable In-App Devmenu if RN >= 0.43
'RCTText',
'RCTImage',
'RCTNetwork',
'RCTWebSocket', # Needed for debugging
'RCTAnimation', # Needed for FlatList and animations running on native UI thread
'RCTActionSheet',
'RCTLinkingIOS',
]
# Explicitly include Yoga if you are using RN >= 0.42.0
pod 'yoga', :path => '../node_modules/react-native/ReactCommon/yoga'
# React's third party deps podspec link
pod 'DoubleConversion', :podspec => '../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec', :modular_headers => false
pod 'glog', :podspec => '../node_modules/react-native/third-party-podspecs/glog.podspec', :modular_headers => false
pod 'Folly', :podspec => '../node_modules/react-native/third-party-podspecs/Folly.podspec', :modular_headers => false
# pod 'google-cast-sdk'
# React Community
pod 'react-native-async-storage', :path => '../node_modules/@react-native-community/async-storage', :modular_headers => false
pod 'react-native-netinfo', :path => '../node_modules/@react-native-community/netinfo', :modular_headers => false
# Fabric & Crashlytics
pod 'Firebase/Core', :modular_headers => false
pod 'Fabric', :modular_headers => false
pod 'Crashlytics', :modular_headers => false
# Fast image
pod 'react-native-fast-image', :path => '../node_modules/react-native-fast-image', :modular_headers => false
# Node modules
pod 'ReactNativeNavigation', :path => '../node_modules/react-native-navigation', :modular_headers => false
pod 'TouchID', :path => '../node_modules/react-native-touch-id', :modular_headers => false
pod 'RNKeychain', :path => '../node_modules/react-native-keychain', :modular_headers => false
pod 'RNVectorIcons', :path => '../node_modules/react-native-vector-icons', :modular_headers => false
pod 'RNDeviceInfo', :path => '../node_modules/react-native-device-info', :modular_headers => false
pod 'RNMyLibrary', :path => '../node_modules/react-native-my-library'
end
post_install do |installer|
installer.pods_project.targets.each do |target|
# https://github.com/facebook/react-native/issues/20492
# The following is needed to ensure the "archive" step works in XCode.
# It removes React & Yoga from the Pods project, as it is already included in the main project.
# Without this, you'd see errors when you archive like:
# "Multiple commands produce ... libReact.a"
# "Multiple commands produce ... libyoga.a"
targets_to_ignore = %w(React yoga)
if targets_to_ignore.include? target.name
target.remove_from_project
end
end
end
我的图书馆的 Podspec
require "json"
package = JSON.parse(File.read(File.join(__dir__, "package.json")))
Pod::Spec.new do |s|
s.name = "RNMyLibrary"
s.version = package["version"]
s.summary = package["description"]
s.description = <<-DESC
RNMyLibrary
DESC
s.homepage = "https://github.com/brenwell/RNMyLibrary"
s.license = "UNLICENSED"
s.author = { "author" => "author@domain.cn" }
s.platform = :ios, "11.0"
s.source = { :git => "https://github.com/brenwell/RNMyLibrary.git", :tag => "#{s.version}" }
s.source_files = "ios/**/*.{h,m,swift}"
s.resource_bundles = {
'TrackModel' => ["ios/RNMyLibrary/Track.xcdatamodeld"]
}
s.requires_arc = true
s.dependency "google-cast-sdk", '4.3.0'
s.dependency "CocoaHTTPServer"
s.dependency "React"
end
错误
Error while loading Swift module:
D-MediaStore: /Users/brenwell/Library/Developer/Xcode/DerivedData/my-library-axsmrqxaoagdyfbmkmhxgjoxfini/Build/Products/Debug-iphonesimulator/RNMyLibrary/Swift Compatibility Header/RNMyLibrary-Swift.h:172:9: note: while building module 'React' imported from /Users/brenwell/Library/Developer/Xcode/DerivedData/my-library-axsmrqxaoagdyfbmkmhxgjoxfini/Build/Products/Debug-iphonesimulator/RNMyLibrary/Swift Compatibility Header/RNMyLibrary-Swift.h:172:
@import React;
^
<module-includes>:1:9: note: in file included from <module-includes>:1:
#import "React-umbrella.h"
^
/Users/brenwell/Dev/native/my-library/ios/Pods/Headers/Public/React/React-umbrella.h:36:9: note: in file included from /Users/brenwell/Dev/native/my-library/ios/Pods/Headers/Public/React/React-umbrella.h:36:
#import "React/RCTBridge.h"
^
error: /Users/brenwell/Dev/native/my-library/ios/Pods/Headers/Public/React/React/RCTBridge.h:106:1: error: duplicate interface definition for class 'RCTBridge'
@interface RCTBridge : NSObject <RCTInvalidating>
^
/Users/brenwell/Library/Developer/Xcode/DerivedData/my-library-axsmrqxaoagdyfbmkmhxgjoxfini/Build/Products/Debug-iphonesimulator/include/React/RCTBridge.h:106:12: note: previous definition is here
@interface RCTBridge : NSObject <RCTInvalidating>
^
这对每个 React Import 都会重复。任何人有任何想法
最佳答案
您导入了两次 React 框架,因此请删除应用 podfile 中的导入。
关于swift - 使用 use_modular_headers 复制 React 定义 cocoapods,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55591549/
有没有办法在 CocoaPod 文件中写入注释?我看了他们的CocoaPods Guide ,但我什么也没看到。 最佳答案 您可以使用 Ruby 注释语法在 Podfile 中添加注释: 内联 #co
我在 Xcode 项目中有多个目标,它们必须依赖于相同的 pod 列表。我可以这样写 Podfile: target :target1 do pod 'pod1' pod 'pod2'
我正在创建一个新的 cocoapod,并希望包含另一个 cocoapod 作为依赖项。 我在 podspec 中添加了必要的行: s.dependency 'Locksmith', '~> 2.0
我执行了我的正常 pod update并收到以下消息: [!] There was an error reading '~/.cocoapods/repos/master/CocoaPods-vers
背景 几年前,我为我正在从事的项目安装了 cocoapods。从那以后我就没有使用过它,现在我需要更新它才能让 Flutter 工作。 系统 操作系统 MacOS Mojave 版本 10.14.3
我想知道用 CocoaPod 包含演示项目的最佳方法是什么。特别是,我希望它成为任何人都可以尝试使用 pod try 的组件。命令。 我看到两个选项: 选项 1:使用 Podfile 在 Exampl
我正在尝试为 firebase 获取一个 pod,但是我在搜索框中输入的任何名称都没有返回任何内容。是网站打不开还是?谢谢 最佳答案 这似乎是许多开发人员不时面临的问题,包括我自己,但是 cocoap
我有一个库的公共(public)分支,该库已存在于 CocoaPods/Specs 中。在 Podfile 中,我可以通过执行以下操作来引用此 fork pod: pod 'CoolLibrary',
pod 命令是否支持列出给定项目中已安装的 CococaPods 的选项? pod list 似乎显示了所有已发布 pod 的列表。我查看了文档,但找不到执行此操作的方法。 最佳答案 如 @DougA
我在 Amazon s3 中存储了一个预编译的框架。 “pod spec lint”失败并出现以下错误。 - ERROR | [iOS] file patterns: The `source_file
我正在用一些资源文件创建我自己的 pod。它基本上是这样定义的: Pod::Spec.new do |s| s.name = 'MyName' s.version = '0.
我正在尝试在我的项目中使用编译到 iOS 的 libFLAC,并使用 CocoaPod 作为依赖项进行安装。 问题是,如果我使用 CocoaPod 0.39 版,工作区创建得很好,但如果我使用 Coc
我在使 CocoaPods 依赖项在 RubyMotion 中工作时遇到了各种问题。首先,如果我添加 dependency 'JSONKit'到我的 Rakefile 然后运行 rake它被 ca
当使用 faSTLane 和 cocoapods 构建我们的 iOS 应用程序时,我注意到 faSTLane 不使用我使用安装的 cocoapods 版本 sudo gem install cocoa
有没有办法在 Podfile 中指定那个 xcconfig文件应该是 #include d 在 Cocoapods 生成的那个? 是否有公开的方法/变量用于附加此 #include还是我需要阅读生成的
在新的 XCode5 中构建我的项目时,我收到以下警告: Pods-App 作为“libPods-App.a”的隐式依赖项被拒绝,因为其架构“i386”不包含所有必需的架构“x86_64” . 最佳答
我已经使用以下命令在 bundle 中安装了 Cocoapods-art: bundle exec gem install cocoapods-art 这是成功消息: Fetching cocoap
在 Xcode 7 中,cocoapods 库的库具有排除代码覆盖率的功能。 但在 Xcode 8 中,该库将包含代码覆盖率。 我是否可以在代码覆盖率中排除该库? 示例:安装 pod 'TPKeybo
我目前正在寻找一个仅支持 Carthage 作为包管理器的库。我希望将其集成的项目已经有一些 CocoaPods 依赖项。有人尝试过同时使用这两个管理器吗? 我觉得这是一个坏主意,但我很想听听实际情况
我刚刚在 Specs Repo 中使用 Pod trunk Push 发布了 Pod 的 Beta 版本。我想知道是否有任何方法可以从规范存储库中删除此版本规范。我没有找到任何通过 pod 命令执行此
我是一名优秀的程序员,十分优秀!