ITMS-90428: Invalid Swift Support - The files libswift_Concurrency.dylib don’t match - ios

I am trying to upload a new build of my app from the new Xcode 14.1 RC but it keeps failing with the below error:
ITMS-90428: Invalid Swift Support - The files libswift_Concurrency.dylib don’t match
/Payload/MY_APP.app/MY_APP_WatchOS.app/libswift_Concurrency.dylib.
Make sure the files are correct, rebuild your app, and resubmit it.
Don’t apply post-processing to /Payload/MY_APP.app/MY_APP_WatchOS.app/libswift_Concurrency.dylib.
My bundle contains a watchOS 4.3 app which I thought might have been an issue, so I tried increasing it to watchOS 7.0 but still got the error.
Bitcode is disabled for all targets.
I don't think I have any post-processing enabled either as I just use the standard Xcode submit to App Store.

The same problem here.
I changed nothing in my watch app since the last successful upload.
The only change is Xcode 14.0 -> 14.1.

Success.
I finally got a build to be accepted.
I set ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO for the watch target.
I don't know how this might affect the actual running of the watch app, as I no longer have an Apple Watch to test it on, but the iOS app is running fine through TestFlight.

Related

Archive distribution problem for watch extension app

We've been developing and testing a Watchkit Extension app (iOS 12.1 and WatchOS 5.1) for the past few months and successfully testing it on a simulator and local, connected devices (iPhoneX + Watch 4) using xCode 10.1.
This past week we built an archive for posting to App Store Connect. We got stuck in the Archive Organizer after archiving for release. The "Validate Content" button was disabled, the Version is blank, the Identifier is blank, and the Type is "Generic Xcode Archive". Unfortunately, all we can do is export the .app files from the Archive Organizer; we can't push the archive to App Store Connect.
We made sure the build scheme was set to Release and we archived to a Generic iOS and WatchOS device. We also set Skip Install for the three targets (iOS app, Watch app, Watch extension) to No as we assumed none of those are static libraries. We even tried every permutation of Skip Install settings. We looked at the issue in the following link and we have no Header steps in the Build Phases of any targets:
https://developer.apple.com/library/archive/technotes/tn2215/_index.html#//apple_ref/doc/uid/DTS40011221-CH1-PROJ
We have two frameworks we included in the project using carthage. We thought maybe these were causing issues, but we rolled back to a branch before we added them and still have the same problem.
We made sure the build in the Scheme is set to a single target and cleared out the Derived Data folder. Still no dice.
I’m not 100% sure from your question, but are you trying to push an archive of the watch app to the App Store?
If so, that’s not how you submit the app. The Watch app is embedded in the “regular” iOS app, and to distribute it you need to archive and submit that app as usual.
If I’ve misunderstood, feel free to ignore this!
I had the exact same problem. When I changed Skip install on the watch app and watch app extension to YES, it suddenly worked. No idea why.

iTunes store operation failed. WatchKit error while uploading build on TestFlight from Xcode 9.3

Invalid WatchKit Support - All apps submitted to App store for Apple Watch must be built with the watch OS 2 or later. This the error which i am receiving from Apple. I am using Xcode 9.3.
I have checked base SDK in all targets also which is mentioned in given link.
I also tried recreating Watch App Target and extension also but no success.
Please check screen shot also of error. There is a missing icon warning which i understand but this red error is a big headache for me.
If anyone has uploaded a build with watch after April 1, 2018 any help will be greatly appreciated...thanks!
As per the error, there might be problem with target OS.
Remove all WatchOS 1 targets and files
Add new WatchOS 2 or later targets
Clean and build and then try upload.

ERROR ITMS-90512: Invalid sdk value... 8.2 is higher than maximum allowed value of 10.3?

Trying to upload a binary, which includes a watch app. The error I'm getting (which I wasn't getting a couple days ago) is the value provided for LC_VERSION_MIN_IPHONEOS for the watchkit extension is 8.2 which is greater than the maximum allowed value of 10.3... apparently 8.2 > 10.3?
I'm updated to the latest XCode, 8.3, that didn't fix the problem. Tried changing the iOS deployment target for the watch app and extension, no apparent effect on the message.
Update: it's fixed!
I have submitted a bug to Apple. They have replied that they are aware of the problem and have people looking into it. They will contact me when they have resolved the issue. I'll post an update here when they do.
This is not related to Xcode 8.3, the error is in the Apple validation process. I had an app in review (no problems in uploading it) that got rejected because the user provided for login had expired. I made no changes to the app, just activated the user and submitted. I have the error now.
Edit: I can also confirm that if Watch support is removed everything goes well.
EDIT: This is problem on Apple side and nothing to do with Xcode. This is only effecting apps with WatchKit.
I just uploaded one my apps today that has a watchkit extension. Try this, it may or may not help.
Xcode -> Product Clean
Xcode -> Quit
In a console terminal do > rm -rf /Users/your_mac_user/library/Developer/Xcode/DerivedData/*
Relaunch Xcode and project
Go to your Xcode -> Build Settings for your iPhone app and make sure its set to 8.0 for debug and release
Now go to both your watch and watch extensions and make sure the Build setting is set to 8.2
Archive and upload again.
EDIT: Although successfully uploaded to iTunes Connect, when trying to submit a Testflight beta build, still got rejected by the same message
Invalid sdk value. The value provided for the sdk portion of
LC_VERSION_MIN_IPHONEOS in XXX.app/PlugIns/XXX WatchKit
Extension.appex/XXX WatchKit App.app/XXX WatchKit App is 8.2
which is greater than the maximum allowed value of 10.3.
Guess Apple's still working on it...
I am having this issue earlier, also with a watchOS1 target in my project.
I've tried to upload the binary again few minutes ago, no more warning shows, and passed the processing of iTunes Connect.
Everybody having this issue should give it a try!
I was submitting with an old Xcode version, I thought that was the problem, so went to the latest and it gives me the same message, that I am submitting for 8.2 which is higher than 10.3.
Now, here is where it gets really crazy. I said, OK, maybe there is an issue with 8.2, so I switched my minimum target to 8.3, cleaned, archived, submitted. I STILL GET THE MESSAGE ABOUT 8.2!!!
I exported the package I am uploading:
otool -l MyApp.app/MyApp |fgrep --after-context=3 LC_VERSION_MIN_IPHONEOS
cmd LC_VERSION_MIN_IPHONEOS
cmdsize 16
version 8.3
sdk 10.2
--
cmd LC_VERSION_MIN_IPHONEOS
cmdsize 16
version 8.3
sdk 10.2
I grepped both the package and my project directory, there is no friggin' "8.2" string anywhere. The same app without the watch extension validates fine. It seems they have broken the watch submissions (at least WatchOS1), which is something they should have noticed, yet I emailed support 2 days ago with screenshots and they were unimpressed, telling me to send them a video if I want my ticket to be processed! Take 1 minute to look at the upload log, I gave you app ID and timestamp, how hard is that?
Edit: It seems I installed the previous version of xcode, there is one newer out, but it also doesn't fix the issue, the problem appears to be on the Apple side...
Edit 2: The binary that has not been going through since the day before yesterday, just got uploaded. Maybe it is fixed?
Edit 3: But then you get the message in itunes connect when you try to submit the app. So it seems they are working on it, not completely resolved yet.
Edit 4: SUCCESS! Successfully submitted, waiting for review!
Apple fixed this bug yesterday. You can use the same binary. There's no need to make any changes.
I deleted the watch-related targets, and uploaded successfully.
If you download a new version of Xcode, make sure to switch to it:
sudo xcode-select --switch /Applications/Xcode_11.6.app/Contents/Developer
sudo xcodebuild -runFirstLaunch
Ecuador's answer about using otool is a great tip to make sure the SDK is correct before you submit.
I too had the same issue. Removed the watch app and did the upload. It has been accepted for review. So looks like the issue is with the validation of the watchkit extension. Will submit the app again with the watch app once this issue has been taken care of by Apple.

Apple Watch App Extension won't run on the simulator anymore

I'm creating my first Apple Watch app and upon first adding the Watch and Watch extension targets I was able to start building my interface and running on the simulator. Since then I've needed to update my iOS app while still working on the Watch app. So I used this advice to "disable" my watch app so I could submit a build for the new iOS version:
Prevent deploying (disable) WatchKit App with iOS iPhone App in Xcode
Simply, by removing the watch and extension in target dependencies and embedded watch content in Build Phases did the trick. Now I'm picking back up the work I put down but can't seem to get it to run on the simulator. I add back the target dependencies and the embedded watch content but I get the error: Error Launching 'App Name Extension' Invalid Bundle - No Apple Watch Binary
Can anyone explain what that means and why I am getting this error?
For anyone who comes across this problem seeking an answer. I found that I had been changing my version and build number to accommodate my current iPhone version and build number. This was creating that error, so to fix it I left the watch app and extension app version/build as default 1.0 and 1.

Getting black screen on Watchkit simulator and "Waiting to Attach" when adding to existing project

I'm interested in adding a Watchkit Extension to my existing app already in the app store. I've done my research, followed some tutorials, and now am ready to actually implement.
The problem I'm having is, I can't seem to add a Watchkit App to my existing project and get it to run in the simulator. If I start a new project and do some tutorials or whatever, the Watchkit App runs fine. Adding to my existing project, I just get a black screen in the simulator window. Not even the status bar is present. http://i.imgur.com/kG7H06i.png
Only lead I have so far is: In the debug navigator, I get "Waiting to Attach" every time I try and launch the app. http://i.imgur.com/vYLfJN8.png
Any help on this would be appreciated. I reseting my simulators, tried deleting my simulators and then reinstalling. Double checked that bundle identifiers and versions match. Target for the WatchKit App and Extension are both set to 8.2 (I was getting an error setting to 8.3). Target on the main app is 6.0, but I tried bumping this up to 8.2 and had the same results.
Thanks!
EDIT: Before this is marked as a duplicate of How to run a WatchKit App, I do want to mention that I'm running the "Watchkit App" Scheme, and I do not have a status bar like in the window like he does.
Are you using iOS 8.2 simulator ?
I had similar error, switching to simulator with iOS 8.3 fixed it for me.
Check that your build target is the Watchkit App. I had it set to the main app so the main app was launching in the sim, but the watch app was blank.
referenced here.
How to run a WatchKit App
I am also running into a similar problem but not on the simulator but on the Apple Watch device. Try setting Skip Install to NO in the WatchKit App target settings
After working with Apple, it appears as if this was an issue with Xcode creating the target. Our app is several years old, and for some reason when creating any new target, the Wrapper Extension is set to "app" every time. This has caused us issues in the past with trying to add testing targets as well.
We were able to fix the issue by going to the Watchkit Extension target, and changing the Wrapper Extension from "app" to "appex". Make sure you leave the Watchkit App target to "app". We asked why Xcode wasn't doing this automatically for this particular project, and it's because the overall project target has the Wrapper Extension set. If you create a new project, you'll notice that Xcode now leaves this blank.
Hope this helps someone else.
Sometimes, restarting Xcode solves the problem.
Even if everything is configured correctly, it may take 20 seconds to attach the process to the debugger.
I tried everything but nothing helped. Then I backed up the watch app and watch extension folders. After that I removed the watch app and watch extension targets and created new targets. Then I restored the files from the backup. It's an awkward approach but it solved the "waiting to attach" problem.
Xcode 10.0; Swift 4.2; iOS 12.0
I had the same issue with Apple Watch simulator. What actually solved it was deleting the default Siri watch face from the Watch App on the iPhone simulator.

Resources