xamarin / xamarin-macios

.NET for iOS, Mac Catalyst, macOS, and tvOS provide open-source bindings of the Apple SDKs for use with .NET managed languages such as C#
Other
2.38k stars 486 forks source link

Xamarin.iOS 17.x release date or any beta version available to support iOS 17 Beta #18409

Closed mollea3 closed 11 months ago

mollea3 commented 12 months ago

Hi Team,

We are working on the xamarin application which requires the latest toolchain along with the latest iOS Release, So the issue is the xamarin.iOS is not supported to create the IPA file for the iOS 17 Beta

Please support us by knowing the Release date of the Xamarin.iOS or a Beta Version to Support the Xcode 15 Beta.

[https://docs.microsoft.com/en-us/xamarin/ios/release-notes/] is not updating with the latest version updates anymore.

Please let us know when will be the Tentative date for the Xamarin.iOS Support for Xamarin 17 Support.

jz-k commented 2 months ago

https://devblogs.microsoft.com/dotnet/announcing-dotnet-maui-in-dotnet-8-rc-2/#bonus-2-xcode-15-and-android-api-34 YES, Xamarin.Forms apps can build with iOS 17, Android 14!

How? Using visual studio for Mac

Xamarin.iOS Version: 16.4.0.18 Visual Studio Community Hash: 9d26602 Branch: xcode14.3 Build date: 2023-09-06 19:52:27-0400

Xcode: Version 15.0.1 (15A507)

Cannot deploy to iOS 17 Device?

Any advice greatly appreciated.

Did you ever figure this out? ☚ī¸

I am working on a Xamarin.Forms app, pulling Xamarin.iOS 16.4.0.23 into a macos-13 image on an Azure DevOps pipeline, but am still stuck with the error "Xamarin.iOS 16.4.0 does not support a deployment target of 17.0 for iOS (the maximum is 16.4)"

I am not sure what else is missing in order to target iOS 17 on build. The blog post linked above and the release notes for Xamarin.iOS 16.4.0.18+ seem to indicate that iOS 17 is supported as a build target....

robertmaxted commented 2 months ago

Hi @jz-k , I have since migrated to MAUI and all is working as expected.. With the deadline coming up soon for Xamarin entering end of life it is about your only option mate. Best of luck 👍

pcervera7747 commented 2 months ago

Hi everyone, I'm not entirely clear on what the end of support on May 1, 2024 means. Does it mean that my Xamarin.Forms application, currently running on iOS 17, will stop working? Does it mean that my application won't work on iOS 18 or future Android versions ?

In other words, what exactly will happen if I don't migrate my Xamarin.Forms application to MAUI?

Thanks in advance!

IainS1986 commented 2 months ago

Your app won't just stop working.

You may also be able to maintain it for a bit, at least likely (although not guaranteed) until ios 18 and/or the next major XCode release (XCode 16?).

At that point, Xamarin.iOS will likely not be able to target XCode16, and the app stores will likely require apps built in XCode 16.

Your existing app will continue to work until Apple make some change that requires apps to be rebuilt, this may never happen (only really happened in the switch over form 32 -> 64bit).

However, if you don't switch over to .net-ios you will likely be unable to update your app as you won't be able to build an ipa that gets accepted by the app stores.

IainS1986 commented 2 months ago

If at any point Apple or Android make some requirements that you must support in new app updates after May, then there is no support planned for Xamarin to allow you to do that, and porting to .net-ios or .net-android will be the only option for you.

pcervera7747 commented 2 months ago

If at any point Apple or Android make some requirements that you must support in new app updates after May, then there is no support planned for Xamarin to allow you to do that, and porting to .net-ios or .net-android will be the only option for you.

Thank you very much, for your response @IainS1986 It was more or less my suspicion but I really appreciate you confirming it. It seems there's no other option but to migrate sooner or later. Best regards!

jz-k commented 2 months ago

Hi @jz-k , I have since migrated to MAUI and all is working as expected.. With the deadline coming up soon for Xamarin entering end of life it is about your only option mate. Best of luck 👍

Thanks for the reply. I have work specced to transition to Maui but was hoping to get one last release on Xamarin to provide some buffer time. A bit frustrating because it seems like this should work (since xcode 15 build tools were added in Xamarin.iOS 16.4.0.18).

I must be missing something, but ultimately you're right, Xamarin's end of life is going to force a migration either way.

angularsen commented 1 month ago

For Azure Pipelines users, this helped me: https://learn.microsoft.com/en-us/answers/questions/1572351/how-to-setup-devops-pipeline-for-xamarin-forms-ios?source=docs

Use macOS-13 or newer, which supports iOS 17 and Android 14:

- stage: Build
  pool:
    vmImage: 'macOS-latest' # Previously 'macOS-12'

Install Xamarin, since macOS-12 was the last version to bundle it:

  jobs:
    - job: Build
      steps:

        # Xamarin no longer included, last VM image that included it was macOS-12.
        # https://learn.microsoft.com/en-us/answers/questions/1572351/how-to-setup-devops-pipeline-for-xamarin-forms-ios?source=docs
        - task: Bash@3
          displayName: Install Xamarin
          inputs:
            targetType: 'inline'
            script: |
              brew install --cask xamarin-ios
              brew install --cask xamarin-android

Then build Android/iOS as ususal:

        - task: XamarinAndroid@1
          displayName: 'Build and sign .aab file'
          inputs:
          # ...and more

        - task: XamariniOS@2
          displayName: Build .ipa file
          inputs:
          # ...and more
najak3d commented 3 weeks ago

For Azure Pipelines users, this helped me: https://learn.microsoft.com/en-us/answers/questions/1572351/how-to-setup-devops-pipeline-for-xamarin-forms-ios?source=docs

Use macOS-13 or newer, which supports iOS 17 and Android 14:

- stage: Build
  pool:
    vmImage: 'macOS-latest' # Previously 'macOS-12'

Install Xamarin, since macOS-12 was the last version to bundle it:

  jobs:
    - job: Build
      steps:

        # Xamarin no longer included, last VM image that included it was macOS-12.
        # https://learn.microsoft.com/en-us/answers/questions/1572351/how-to-setup-devops-pipeline-for-xamarin-forms-ios?source=docs
        - task: Bash@3
          displayName: Install Xamarin
          inputs:
            targetType: 'inline'
            script: |
              brew install --cask xamarin-ios
              brew install --cask xamarin-android

Then build Android/iOS as ususal:

        - task: XamarinAndroid@1
          displayName: 'Build and sign .aab file'
          inputs:
          # ...and more

        - task: XamariniOS@2
          displayName: Build .ipa file
          inputs:
          # ...and more

Is this still an option? We simply didn't notice the severity of all of this until just now - when we tried to publish a quick update to our iOS app and got the "Invalid Binary" return - and upon not being able to simply change the SDK from16.4 to 17 -- we then discovered that "we're screwed".

We make VERY LITTLE use of Xamarin.Forms. Our App consists only of a SINGLE full-form SKGLView - and we render our entire UI manually via SKIA Sharp GL... This works great, as it runs 100% the same everywhere (like a game, not real use of any native controls, other than this single Image box of type SKGLView).

So need NOTHING FROM MAUI - just need to be able to build our app against iOS SDK 17 (and XCode 15).

We've never used AZURE-anything. We simply use Visual Studio 2022 on local PC's and Mac Minis to do our builds for Windows, Android, and iOS.

But we're currently screwed, unable to build against SDK 17, and thus unable to release to App Store a critical patch release. The timing of this was tragic - we unknowingly missed the cutoff by just 2 days. The patch is a critical stability patch - but now we can't get this out to our users - until we get a workaround.

Have spent 20 hrs trying to migrate all 3 to MAUI - but this appears horrific.

Next Step will be to just try "minimal migration to MAUI" for iOS-only.

JohnHDev commented 3 weeks ago

@najak3d

For Azure Pipelines users, this helped me: https://learn.microsoft.com/en-us/answers/questions/1572351/how-to-setup-devops-pipeline-for-xamarin-forms-ios?source=docs Use macOS-13 or newer, which supports iOS 17 and Android 14:

- stage: Build
  pool:
    vmImage: 'macOS-latest' # Previously 'macOS-12'

Install Xamarin, since macOS-12 was the last version to bundle it:

  jobs:
    - job: Build
      steps:

        # Xamarin no longer included, last VM image that included it was macOS-12.
        # https://learn.microsoft.com/en-us/answers/questions/1572351/how-to-setup-devops-pipeline-for-xamarin-forms-ios?source=docs
        - task: Bash@3
          displayName: Install Xamarin
          inputs:
            targetType: 'inline'
            script: |
              brew install --cask xamarin-ios
              brew install --cask xamarin-android

Then build Android/iOS as ususal:

        - task: XamarinAndroid@1
          displayName: 'Build and sign .aab file'
          inputs:
          # ...and more

        - task: XamariniOS@2
          displayName: Build .ipa file
          inputs:
          # ...and more

Is this still an option? We simply didn't notice the severity of all of this until just now - when we tried to publish a quick update to our iOS app and got the "Invalid Binary" return - and upon not being able to simply change the SDK from16.4 to 17 -- we then discovered that "we're screwed".

We make VERY LITTLE use of Xamarin.Forms. Our App consists only of a SINGLE full-form SKGLView - and we render our entire UI manually via SKIA Sharp GL... This works great, as it runs 100% the same everywhere (like a game, not real use of any native controls, other than this single Image box of type SKGLView).

So need NOTHING FROM MAUI - just need to be able to build our app against iOS SDK 17 (and XCode 15).

We've never used AZURE-anything. We simply use Visual Studio 2022 on local PC's and Mac Minis to do our builds for Windows, Android, and iOS.

But we're currently screwed, unable to build against SDK 17, and thus unable to release to App Store a critical patch release. The timing of this was tragic - we unknowingly missed the cutoff by just 2 days. The patch is a critical stability patch - but now we can't get this out to our users - until we get a workaround.

Have spent 20 hrs trying to migrate all 3 to MAUI - but this appears horrific.

Next Step will be to just try "minimal migration to MAUI" for iOS-only.

This is specifically if you use ADO to build, you can still make the changes locally and rebuild and deploy a Xamarin app. You might just need to install Xcode 15 and target that for the build (project options, iOS, Build, SDK Version 17.2). Xamarin Forms was updated some time back to support Xcode 15, so check the nuget versions too.