Kevin Machado
Kevin Machado

Reputation: 4187

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

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 ?

Upvotes: 19

Views: 20087

Answers (2)

varun kalra
varun kalra

Reputation: 213

I faced the same problem while trying to upload from Xcode 9.3 This happened because I added 'use_frameworks' in my OneSignal NotificationServiceExtension

enter image description here

The value Always Embed Swift Standard Libraries found in Build Settings should be set to Yes only for you main Projects and not for your custom frameworks or extensions.

Upvotes: 16

Kevin Machado
Kevin Machado

Reputation: 4187

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

Upvotes: 40

Related Questions