为什么在使用Cocoapods时无法归档包含App Clip的项目?

问题描述

我面临将App Clip集成到现有项目中的问题。

该项目使用Cocoapods,并花了相当长的时间将相关文件添加到目标,修改Podfile等之后。当尝试存档包含App Clip的iOS目标时,出现以下错误

enter image description here

该问题似乎与Firebase InAppMessaging窗格有关。

这是Podfile:

platform :ios,'12.4'
inhibit_all_warnings!


workspace 'SomeWorkspace'
project './SomeProject.xcodeproj'

def shared_pods

  use_frameworks!

  # Firebase UI
  pod 'firebaseui/Database'
  pod 'firebaseui/Auth'
  pod 'firebaseui/Google'
  pod 'firebaseui/Facebook'

  # Firebase
  pod 'Firebase'
  pod 'Firebase/Auth'
  pod 'Firebase/Core'
  pod 'Firebase/Crashlytics'
  pod 'Firebase/Database'
  pod 'Firebase/InAppMessaging'
  pod 'Firebase/Messaging'
  pod 'Firebase/Functions'
  pod 'Firebase/RemoteConfig'
  pod 'Firebase/Analytics'
  pod 'Firebase/DynamicLinks'
  pod 'Firebase/Storage'
  pod 'CodableFirebase'

  # Apollo iOS
  pod 'Apollo','0.31.0'

  # Apps Flyer
  pod 'AppsFlyerFramework'

  # Facebook
  pod 'FacebookCore'

  # Segment
  pod "Analytics","3.7.0"

  # Crashlytics
  pod 'Fabric','~> 1.9.0'

  pod 'GoogleMaps','~> 3.8.0'
  pod 'Intercom'
  pod 'SwiftyBeaver'
  pod 'swinject'
  pod 'Stripe','19.0.1'

  pod 'RxSwift'
  pod 'RxDataSources','~> 4.0.0'
  pod 'RxViewController'
  pod 'RxGesture'
  pod 'RxcoreLocation','~> 1.4'

  pod 'SnapKit','~> 5.0.0'

  # Reachability
  pod 'RxReachability'

  pod 'RxSwiftExt','~> 5'
  pod 'RxKeyboard'
  pod 'RxFirebase/Database'

  #Algolia
  pod 'InstantSearch','~> 5.0'

  #User interface
  pod 'SwiftMessages'

end

target 'ClientDev' do
    shared_pods
end

target 'ClientProd' do
    shared_pods
end

target 'ClientStaging' do
    shared_pods
end

target 'ClientClipDev' do

  use_modular_headers!

  # Firebase
  pod 'Firebase'
  pod 'Firebase/Auth'
  pod 'Firebase/Core'
  pod 'Firebase/Database'
  pod 'Firebase/InAppMessaging'
  pod 'Firebase/Messaging'
  pod 'Firebase/Functions'
  pod 'Firebase/RemoteConfig'
  pod 'Firebase/DynamicLinks'
  pod 'Firebase/Storage'
  pod 'CodableFirebase'

  # Google Maps
  pod 'GoogleMaps','~> 3.8.0'

  # Apollo iOS
  pod 'Apollo','0.31.0'

  # RxSwift
  pod 'RxSwift'
  pod 'RxDataSources','~> 1.4'
  pod 'RxSwiftExt','~> 5'
  pod 'RxKeyboard'
  pod 'RxFirebase/Database'

  pod 'SnapKit','~> 5.0.0'
  pod 'swinject'
end

iOS主要应用目标的框架,库和嵌入式内容

enter image description here

App Clip应用目标的框架,库和嵌入式内容

enter image description here

我知道Firebase当前无法与App Clips一起使用,并且嵌入Google Maps是一个坏主意,但是我目前正在处理的这些东西都没有问题。唯一的问题是,对于我生命中的我,我无法弄清楚如何将该项目保存到存档中。

当然,该项目已清理,删除了“派生数据”等。因此,该问题很可能与App Clip + Cocoapods有关。

提前感谢您的回答!

L.E。

似乎生成了2个FirebaseInAppMessaging捆绑包,但我不知道为什么。

enter image description here

解决方法

在AppClip目标中,不包括

@Bean
        @Autowired
        public HibernateTransactionManager transactionManager() {
             HibernateTransactionManager transactionManager
             = new HibernateTransactionManager();
           transactionManager.setSessionFactory(sessionFactory().getObject());
            return transactionManager;
        }

只需发表评论即可。

use_frameworks!