我们构建了一个使用Firebase的flutter模块。在模拟器中工作正常
现在,我们正在尝试将此flutter模块集成到也使用firebase的现有本机iOS应用中。我们在安装pod时遇到了问题
The 'Pods-App' target has transitive dependencies that include static frameworks: (cloud_firestore, firebase_core, FirebaseDatabase, FirebaseAuth, FirebaseFirestore, FirebaseCore, FirebaseInstanceID, FirebaseFunctions, FirebaseMessaging, and FirebaseStorage)
我们在本地应用程序podfile中添加了此行以进行集成 flutter_application_path ='/用户/用户名/文档/ MyApp-Flutter' eval(File.read(File.join(flutter_application_path,'.ios','Flutter','podhelper.rb')),绑定)
我们按照以下步骤集成了项目 https://github.com/flutter/flutter/wiki/Add-Flutter-to-existing-apps
我们在podfile中添加了此标签,已解决了pod安装问题。但是ios的构建由于flutterpluginrestraint而失败
pre_install做|安装程序| #https://github.com/CocoaPods/CocoaPods/issues/3289的#解决方法 Pod :: Installer :: Xcode :: TargetValidator.send(:define_method,:verify_no_static_framework_transitive_dependencies){} 结束
即使包括flutter项目,预期吊舱安装也必须成功。我不明白如何解决这些依赖性,特别是在flutter和本机应用程序都使用相同模块的情况下。
答案 0 :(得分:0)
我遇到了这个问题,现在刚刚设法在我的环境中成功构建。您可能现在已经解决了这个问题,但有问题的我将留给其他任何人使用。
类似于您,当包含具有静态框架的依赖项时,我从主机应用程序中的pod install中得到了此错误:
The 'Pods-App' target has transitive dependencies that include static frameworks: (flutter_crashlytics)
我本来是想用您在帖子中提到的解决方法来解决此问题。但是,这导致了以下原因:https://i.stack.imgur.com/c4Zik.png
在尝试了互联网上的所有解决方案之后,我通过以下步骤找到了成功:
一些其他观察结果:
Bridging-Header.h:
#import <CommonCrypto/CommonCrypto.h>
#import <KochavaTracker.h>
#import <Flutter/Flutter.h>
#import <FlutterPluginRegistrant/GeneratedPluginRegistrant.h>
Podfile:
# Uncomment the next line to define a global platform for your project
platform :ios, '10.0'
flutter_application_path = '../ios/flutter_module/'
def shared_pods
pod 'BiometricAuthentication'
pod 'SwiftKeychainWrapper'
pod 'AppDynamicsAgent'
pod 'ReachabilitySwift'
pod 'KochavaTrackeriOS'
end
target 'Target1' do
eval(File.read(File.join(flutter_application_path, '.ios', 'Flutter', 'podhelper.rb')), binding)
inherit! :search_paths
shared_pods
end
希望这对您和其他处于相同情况的人有所帮助。我对CocoaPods和iOS开发的经验不是很丰富,所以我会把更多的猜测留给可以理解根本原因的人。