Upon submitting our iOS + watchOS v1 app using the latest (10.4) version of Xamarin iOS, we discovered that the Mono framework is being duplicated within the Watch Extension folder of the package. This results in 3 App Store submission errors:
- ERROR ITMS-90685: "CFBundleIdentifier Collision. There is more than one bundle with the CFBundleIdentifier value 'xamarin.ios.mono-framework' under the iOS application 'X.app'."
- ERROR ITMS-90205: "Invalid Bundle. The bundle at 'X.app/PlugIns/XWatchExtension.appex' contains disallowed nested bundles."
- ERROR ITMS-90206: "Invalid Bundle. The bundle at 'X.app/PlugIns/XWatchExtension.appex' contains disallowed file 'Frameworks'."
A manual inspection of the package confirms there is a Frameworks folder in the watch extension where there was not in earlier versions.
To work around this problem, we were able to roll back to 10.3.1.8 and in doing so confirmed the problem went away.
To rule out problems with our specific project, we created a vanilla iOS + Watch app and confirmed the same behavior at build time.
Please let me know if you need any additional information.
I can confirm the regression in 10.4 which bundles Mono.framework in the WatchKit Extension. This wasn't the case in 10.3.
To reproduce I simply created a new iOS project with a new watchOS 1 project.
This would be an MSBuild issue (changing the component of this bug).
I don't know that it's an MSBuild issue... I thought the mtouch tool pulled in the Mono framework?
You can work around it by adding "--mono:static" to the additional mtouch arguments in the watchkit extension project.
@Jeff, yes, this is an mtouch issue.
Rolf: I tried your workaround and it didn't seem to work. Anything else I might be missing?
@Steve, did you clean your solution first? If you don't, the Mono.framework from the previous build will still be around. If that doesn't work, please attach the full build log and I'll have a look.
PR was merged in master https://github.com/xamarin/xamarin-macios/commit/ff9bae7bbc26bd6239e8353213a7ee4f1323e529
Fixed in d15-1 as well: https://github.com/xamarin/xamarin-macios/commit/f94cf268451a8ec3a7fab75874724b6249bc9def
Created attachment 20596 [details]
Bug 53232 Ide Logs and Screenshots of Apploader
Verified this bug on following config :
=== Xamarin Studio Enterprise ===
Version 6.3 (build 853)
Installation UUID: 2adb7e6f-cff5-443b-a1c2-9cd618f4c8e6
Mono 4.8.0 (mono-4.8.0-branch/9d74414) (64-bit)
GTK+ 2.24.23 (Raleigh theme)
Package version: 408000524
=== NuGet ===
=== Xamarin.Profiler ===
'/Applications/Xamarin Profiler.app' not found
=== Apple Developer Tools ===
Xcode 8.2.1 (11766.1)
=== Xamarin.iOS ===
Version: 10.8.0.27 (Visual Studio Enterprise Trial)
Build date: 2017-03-21 09:34:27-0400
=== Xamarin Inspector ===
Build date: Wed, 01 Mar 2017 21:53:36 GMT
=== Xamarin.Mac ===
Version: 220.127.116.11 (Visual Studio Enterprise Trial)
=== Xamarin.Android ===
Version: 18.104.22.168 (Visual Studio Enterprise Trial)
Android SDK: /Users/globallogic/Library/Developer/Xamarin/android-sdk-macosx
Supported Android versions:
2.3 (API level 10)
4.4 (API level 19)
6.0 (API level 23)
7.0 (API level 24)
7.1 (API level 25)
SDK Tools Version: 25.2.5
SDK Platform Tools Version: 25.0.3
SDK Build Tools Version: 25.0.1
Java SDK: /usr
java version "1.8.0_101"
Java(TM) SE Runtime Environment (build 1.8.0_101-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode)
Android Designer EPL code available here:
=== Build Information ===
Release ID: 603000853
Git revision: e2019d10e6726829235930d61891599a299355ec
Build date: 2017-03-20 16:03:27-04
Xamarin addins: e99b90462c4f9ec52e982ae747f1213fdaafacfc
Build lane: monodevelop-lion-d15-1
=== Operating System ===
Mac OS X 10.12.3
Darwin NAG1-DMAC-26499 16.4.0 Darwin Kernel Version 16.4.0
Thu Dec 22 22:53:21 PST 2016
After Uploading Watch App through apploader no above mentioned errors were observed.Hence Marking this bug as Verified.