thedjnivek thedjnivek - 6 months ago 268
iOS Question

Error ITMS-90206 Invalid bundle contains disallowed file 'Frameworks'

I have a problem uploading my application into the Store via Xcode, this one in particular.

Invalid Bundle contains disallowed file frameworks

I saw a lot of post about this error, but all are talking about

Extension App
, that I do not use.

I'm using a
Custom framework
and
Cocoapods
.

You can see here my tree :

Tree Xcode Project Custom Framework


  • XXX is my project app name

  • SharedXXX is my
    custom framework

  • Pods is the project created by
    cocoa pods



Here is my cocoa
podFile
:

use_frameworks!
link_with 'XXX', 'SharedXXX'
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.1'


workspace 'XXX'

xcodeproj 'XXX/XXX.xcodeproj'
xcodeproj 'Shared/SharedXXX.xcodeproj'

def default_pods
pod 'Reveal-iOS-SDK', :configurations => ['Debug']
pod "SnapKit", '~> 0.17.0'
pod "DKChainableAnimationKit", '~> 1.6.0'
pod "AsyncSwift"
end

def shared_pods
pod "Alamofire", '~> 3.0'
pod 'SwiftyJSON', :git => 'https://github.com/SwiftyJSON/SwiftyJSON.git'
pod 'ReachabilitySwift', :git => 'https://github.com/ashleymills/Reachability.swift'
end

target :XXX do
xcodeproj 'XXX/XXX.xcodeproj'
default_pods
shared_pods
end

target :XXXDev do
xcodeproj 'XXX/XXX.xcodeproj'
default_pods
shared_pods
end

target :SharedXXX do
xcodeproj 'Shared/SharedXXXX.xcodeproj'
shared_pods
end


Build settings for
custom framework
(SharedXXX) :

Custom Framework build settings

I set the Embedded property to
Yes


General Settings for
custom framework
(SharedXXX) :

Custom Framework General Settings

The framework provided by Cocoapods is linked.

And to finish,

The General Settings to the main project (App Project : called XXX on the tree)

Main project:

Any idea ?

Answer

I solved the problem

Firstly, set into Build Settings

  • For main project (here XXX) : Embedded Content Contains Swift Code to YES

  • Custom Framework (SharedXXX) : Embedded Content Contains Swift Code to NO

  • Custom Framework (SharedXXX) : Runpath Search Path = @executable_path/../../Frameworks

This helped me solving that issue