Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Archive fails: GoogleMobileAds.framework does not support the minimum OS Version specified in the Info.plist #62

Closed
aoverholtzer opened this issue Mar 4, 2024 · 40 comments

Comments

@aoverholtzer
Copy link

Description

Archiving our app using Xcode 15.3 RC via Xcode Cloud fails the validation stage on App Store Connect due to problems with the framework's Info.plist file. App is targeting iOS and has a deployment target of iOS 15.

The same issue has been reported in two related projects: GoogleAppMeasurement (google/GoogleAppMeasurement#62) and Firebase (firebase/firebase-ios-sdk#12441).

Reproducing the issue

Archive an app that uses the GoogleMobileAds using Xcode 15.3 RC. Submit it to App Store Connect.

GoogleMobileAds SDK Version

11.0.1

Xcode Version

15.3 RC

Installation Method

Swift Package Manager

Targeted Platforms

iOS

Relevant Log Output

Invalid Bundle. The bundle MyApp.app/Frameworks/GoogleMobileAds.framework does not support the minimum OS Version specified in the Info.plist.
Invalid Bundle. The bundle MyApp.app/Frameworks/UserMessagingPlatform.framework does not support the minimum OS Version specified in the Info.plist.

Workaround

Archiving with Xcode 15.2 works fine. You can set the Xcode version for Xcode Cloud builds within App Store Connect -> Xcode Cloud -> Manage Workflows -> Workflow -> Xcode version. The default value is "Latest Release".

@malandr2
Copy link
Collaborator

malandr2 commented Mar 5, 2024

Hey @aoverholtzer, thanks for flagging. This is something we are aware of and will be addressed in the next release. In the meantime, continue using Xcode 15.2.

@malandr2
Copy link
Collaborator

malandr2 commented Mar 5, 2024

To update my previous response, it is determined that the .plist error is something that Apple has to resolve. They are aware of this error but we do not know when they will address it.

For now SPM can't use Xcode 15.3, continue using Xcode 15.2 or earlier.

@yishair-investing
Copy link

yishair-investing commented Mar 6, 2024

@malandr2 this issue was fixed on the other Google SDKS, e.g. Firebase firebase/firebase-ios-sdk#12439 why is it different for this SDK?

@zeusent
Copy link

zeusent commented Mar 6, 2024

I'm having the same issue and it's blocking my development. Any news about this being fixed soon?

@nbmisen
Copy link

nbmisen commented Mar 6, 2024

same issue
cannot compile now

@jamiehunt
Copy link

To update my previous response, it is determined that the .plist error is something that Apple has to resolve. They are aware of this error but we do not know when they will address it.

For now SPM can't use Xcode 15.3, continue using Xcode 15.2 or earlier.

@malandr2 Do you have a link to the Apple support case where they are tracking resolution? Thanks.

To mention that Xcode 15.3 is no-longer RC and is general release where this issue is occurring.

@malandr2
Copy link
Collaborator

malandr2 commented Mar 6, 2024

@yishair-investing

https://github.com/firebase/firebase-ios-sdk/pull/12439/files#diff-f4eb4ff5ec89af999cbe8fa3ffe5647d7853ffbc9c1515b337ca043c684b6bb4R679 updated the minimumOSVersion to 100 which is a workaround for the time being for Xcode 15.3 to be useable with SPM. To truly solve the issue Apple will have to fix.

And @jamiehunt Apple feedback tickets are internal to them so they cannot be shared.

@yishair-investing
Copy link

@malandr2, a workaround sounds good until Apple can solve the issue properly. Not supporting the latest Xcode/Swift is a big issue. E.g. whats the plan if Apple don't fix this before iOS 18, will Google Ads not support iOS 18?

@malandr2
Copy link
Collaborator

malandr2 commented Mar 6, 2024

@ALL

We expect to have a new Google Mobile Ads version next week that support Xcode 15.3 using the workaround.

Edit: Apple will still need to fix this issue and it's possible their fix may affect the workaround. After it's been resolved we will revert the workaround in a future release.

@Ankooo12
Copy link

Ankooo12 commented Mar 8, 2024

@aoverholtzer
I was facing the same problem. I just transferred the swift-package-manager to Pods. The issue is solved for me so you can do so.

@c7topher
Copy link

c7topher commented Mar 9, 2024

No fix here yet? Sad. Firebase had this fixed so fast.

@Ankooo12
Copy link

Ankooo12 commented Mar 9, 2024 via email

@c7topher
Copy link

c7topher commented Mar 9, 2024

Clean Build Update dependency - Firebase - 10.22.1 Then try. If not works. Delete DerivedData, restart Mac and try. It will work. I have updated 3 apps yesterday with same method so please try.

On 09-Mar-2024, at 7:47 AM, Chris White @.***> wrote: Firebase

firebase is working fine, its google mobile ads and google user messaging platform that are not working. All the firebase dependencies are working since the fix yesterday

@VardyNg
Copy link

VardyNg commented Mar 9, 2024

@ALL

We expect to have a new Google Mobile Ads version next week that support Xcode 15.3 using the workaround.

Edit: Apple will still need to fix this issue and it's possible their fix may affect the workaround. After it's been resolved we will revert the workaround in a future release.

Hope it releases soon! Thanks

@jakirseu
Copy link

jakirseu commented Mar 9, 2024

I am facing same issue in Xcode 15.3.

@houmie
Copy link

houmie commented Mar 9, 2024

@yishair-investing

https://github.com/firebase/firebase-ios-sdk/pull/12439/files#diff-f4eb4ff5ec89af999cbe8fa3ffe5647d7853ffbc9c1515b337ca043c684b6bb4R679 updated the minimumOSVersion to 100 which is a workaround for the time being for Xcode 15.3 to be useable with SPM. To truly solve the issue Apple will have to fix.

Sorry, is there a way to apply this workaround so I don't have to downgrade Xcode? Which file do I have to edit?
Thanks in advance

@jooyoungho
Copy link

While the issue appears to have been resolved for most SDKs in Firebase, GoogleMobileAds and UserMessagingPlatform still throw an Invalid Bundle error 🥲

@jakirseu
Copy link

jakirseu commented Mar 10, 2024

I have used older Xcode (15.2) and able to upload the app. You can get older version here: https://developer.apple.com/download/all/

@umutturemen1496
Copy link

Please fix the problem. I don't want to downgrade to XCode 15.2 for no reason. This makes no sense.

I am using the main branch to get the most updated version as soon as possible. Nothing has changed since 3 days. Either Apple or you should fix this quickly. We cannot send an update.

Screenshot 2024-03-11 at 14 22 30

@icedice
Copy link

icedice commented Mar 11, 2024

Please fix the problem. I don't want to downgrade to XCode 15.2 for no reason. This makes no sense.

I am using the main branch to get the most updated version as soon as possible. Nothing has changed since 3 days. Either Apple or you should fix this quickly. We cannot send an update.

Screenshot 2024-03-11 at 14 22 30

I would not really be "for no reason" would it?

@houmie
Copy link

houmie commented Mar 11, 2024

They are fixing it this week. I was at first a bit hesitant too. But I ended up just downloading Xcode 15.2 from the developer page. It's one file. Doesn't need installation. You just unzip it and run it.

Just make sure to go to Settings and select the old Xcode Command Line 15.2 as well.
Screenshot 2024-03-11 at 14 00 23

It's very easy. In other words you don't need to delete XCode 15.3, you just download the old one and use it in parallel. When the patch is here, you just delete the old Xcode (one file) and done.

I hope this helps,

@PerottiSam
Copy link

PerottiSam commented Mar 11, 2024

They are fixing it this week. I was at first a bit hesitant too. But I ended up just downloading Xcode 15.2 from the developer page. It's one file. Doesn't need installation. You just unzip it and run it.

Just make sure to go to Settings and select the old Xcode Command Line 15.2 as well. Screenshot 2024-03-11 at 14 00 23

It's very easy. In other words you don't need to delete XCode 15.3, you just download the old one and use it in parallel. When the patch is here, you just delete the old Xcode (one file) and done.

I hope this helps,

Hi, I downloaded the version 15.2 and I am able to upload and test my iOS app on the device simulator, but I am not able to archive and upload it to app store connect because it shows the error "Asset validation Failed". Any workaround for this?

@houmie
Copy link

houmie commented Mar 11, 2024

Are you sure you haven't mistakenly opened the latest Xcode? This happens to me every time. Make sure you have opened the Xcode in your Downloads folder.

Then fetch the latest packages via SPM. Clear the Derived Data and try again. It has to work. The error is on your side.

@malandr2
Copy link
Collaborator

@ALL

We are still on track to release a new version of the Google Mobile Ads SDK (and UMP SDK) that supports Xcode 15.3 later this week.

@alexsereno
Copy link

alexsereno commented Mar 11, 2024

Here's a workaround that will work more consistently for the time being, if like me you need to release asap.
This also is necessary for Xcode cloud

  1. Use XCodes.app to install 15.2 & the correct simulators
  2. Using XCodes.app, make 15.2 the active install (checkmark)
  3. Delete the Package.resolved file in your build folder (The Package.resolved file is inside your .xcodeproj directory at [appName].xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved)
  4. Open XCode & clear out the build folder, then select file > reset package caches

Once that finishes, you can now push to XCCloud or make an archive. The important step here for Xcode cloud is that your package.resolved file is made from 15.2

@icedice
Copy link

icedice commented Mar 12, 2024

Here's a workaround that will work more consistently for the time being, if like me you need to release asap. This also is necessary for Xcode cloud

  1. Use XCodes.app to install 15.2 & the correct simulators
  2. Using XCodes.app, make 15.2 the active install (checkmark)
  3. Delete the Package.resolved file in your build folder (The Package.resolved file is inside your .xcodeproj directory at [appName].xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved)
  4. Open XCode & clear out the build folder, then select file > reset package caches

Once that finishes, you can now push to XCCloud or make an archive. The important step here for Xcode cloud is that your package.resolved file is made from 15.2

More consistently than what? Its the exact same as the other workaround...

@Horse888
Copy link

@ALL

We are still on track to release a new version of the Google Mobile Ads SDK (and UMP SDK) that supports Xcode 15.3 later this week.

Also update the framework UserMessagingPlatform.framework pls!

Asset validation failed
Invalid Bundle. The bundle xxxmeworks/UserMessagingPlatform.framework does not support the minimum OS Version specified in the Info.plist.

@alexsereno
Copy link

Here's a workaround that will work more consistently for the time being, if like me you need to release asap. This also is necessary for Xcode cloud

  1. Use XCodes.app to install 15.2 & the correct simulators
  2. Using XCodes.app, make 15.2 the active install (checkmark)
  3. Delete the Package.resolved file in your build folder (The Package.resolved file is inside your .xcodeproj directory at [appName].xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved)
  4. Open XCode & clear out the build folder, then select file > reset package caches

Once that finishes, you can now push to XCCloud or make an archive. The important step here for Xcode cloud is that your package.resolved file is made from 15.2

More consistently than what? Its the exact same as the other workaround...

Taking this in good faith - Carefully note the differences in steps. If you don't remove the package.resolved file before you rebuild it with 15.2 XcCloud won't accept the binary, and using XCodes.app allows you to switch releases back and forth much easier. Hope this helps

@iharkatkavets
Copy link

The issue happens at the step of uploading the build to TestFlight. Switching to Xcode 15.2 with changing Command Line Tools version didn't help me.

@BasilArackal
Copy link

The issue happens at the step of uploading the build to TestFlight. Switching to Xcode 15.2 with changing Command Line Tools version didn't help me.

For me it's showing also when trying to install to a real device, awaiting the fix.

@icedice
Copy link

icedice commented Mar 14, 2024

The issue happens at the step of uploading the build to TestFlight. Switching to Xcode 15.2 with changing Command Line Tools version didn't help me.

Remember to delete package.resolved after making the switch..

@malandr2
Copy link
Collaborator

@ALL

We have just released SPM version 11.2.0 which should address the 15.3 Xcode issue. Please report back the issue still persists. Thanks!

@jamiehunt
Copy link

@malandr2 looks good from my end. Using Xcode 15.3 (latest), updated Swift PM packages to bring in GoogleMobileAds-11.2.0, can produce an archive of my project & upload thru App Store connect successfully.

Thanks for getting us the workaround in place & hopefully Apple gets root-cause addressed shortly.

@Daggerpov
Copy link

Daggerpov commented Mar 14, 2024

For those who didn't know how to update the package (like me):

  1. Right click on both of the packages (GoogleMobileAds & GoogleUserMessagingPlatform) -> Update Package for both
image image

To add to what @jamiehunt said, it works for TestFlight too. Thanks for fixing this issue so promptly @malandr2 .

@jamiehunt
Copy link

@Daggerpov - if you want to update all packages at once File -> Packages -> Update to Latest Package Versions 😀

@yusufonderd
Copy link

It was solved with version 11.2.0. Thanks.

@YuutaEndo
Copy link

GoogleMobileAds 11.2.0
GoogleUserMessagingPlatform 2.3.0

With this combination, you can upload your archive to app store connect.
The build should also pass.
Thank you for the information.

@YuutaEndo
Copy link

I have compiled a workaround

https://www.fksystem-wind.com/post/failed-to-load-info-plist-from-bundle-at-path-%E3%81%8C%E3%83%93%E3%83%AB%E3%83%89%E3%82%92%E5%A6%A8%E3%81%92%E3%82%8B?referral=business-feed

@malandr2
Copy link
Collaborator

@ALL

Closing this out as the the issue has been resolved. For others who stumble upon this, use Google Mobile Ads SDK 11.2.0 (and UMP SDK 2.3.0) for Xcode 15.3 compatibility. Stay tuned for any updates from Apple. Thanks!

@DiNerdyYawdie
Copy link

@ALL

Closing this out as the the issue has been resolved. For others who stumble upon this, use Google Mobile Ads SDK 11.2.0 (and UMP SDK 2.3.0) for Xcode 15.3 compatibility. Stay tuned for any updates from Apple. Thanks!

The link for UMP SDK is https://github.com/googleads/swift-package-manager-google-user-messaging-platform.git

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests