Migração de projetos Xamarin da Apple
Um projeto do .NET 8 para um aplicativo .NET para iOS é semelhante ao seguinte exemplo:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0-ios</TargetFramework>
<OutputType>Exe</OutputType>
<Nullable>enable</Nullable>
<ImplicitUsings>true</ImplicitUsings>
<SupportedOSPlatformVersion>13.0</SupportedOSPlatformVersion>
</PropertyGroup>
</Project>
Para um projeto de biblioteca, omita a propriedade $(OutputType)
completamente ou especifique Library
como o valor da propriedade.
Alterações nas propriedades do MSBuild
A seguinte tabela mostra como mapear propriedades em projetos do Xamarin da Apple para projetos do .NET:
Propriedade | Descrição | .NET | Conversão de projeto |
---|---|---|---|
MtouchExtraArgs |
Argumentos adicionais para mtouch. | Alguns argumentos ainda são aplicáveis, alguns argumentos não são. | Copiar |
MtouchArch |
Arquitetura(s) de aplicativo. | N/D | Converter em RuntimeIdentifier . Para obter mais informações, consulte Converter em RuntimeIdentifier. |
XamMacArch |
Arquitetura(s) de aplicativo. | N/D | Converter em RuntimeIdentifier . Para obter mais informações, consulte Converter em RuntimeIdentifier. |
HttpClientHandler |
A HttpClientHandler padrão. |
UseNativeHttpHandler |
Converter em UseNativeHttpHandler . Para obter mais informações, consulte Converter em UseNativeHttpHandler. |
MtouchHttpClientHandler |
O MtouchHttpClientHandler. padrão |
UseNativeHttpHandler |
Converter em UseNativeHttpHandler . Para obter mais informações, consulte Converter em UseNativeHttpHandler. |
EnableCodeSigning |
Especifica se a assinatura de código está habilitada. | Copiar | |
CodeSigningKey |
Especifica a chave de assinatura de código. | Renomear para CodesignKey | |
CodesignKey |
Especifica a chave de assinatura de código. | Copiar | |
CodesignProvision |
Especifica o perfil de provisão. | Copiar | |
CodesignEntitlements |
O caminho para o arquivo de direitos. | Copiar | |
CodesignExtraArgs |
Argumentos extras de assinatura de código. | Copiar | |
PackageSigningKey |
Especifica a chave de assinatura de código para assinar o pacote. | Copiar | |
PackagingExtraArgs |
Especifica os argumentos extras para a ferramenta de empacotamento. | Copiar | |
ProductDefinition |
O caminho para o arquivo de definição do produto a ser usado ao empacotar. | Copiar | |
MtouchEnableSGenConc |
Renomeie para EnableSGenConc . |
||
EnableSGenConc |
Copiar |
Converter em RuntimeIdentifier
A seguinte tabela mostra como converter as propriedades MtouchArch
e XamMacArch
na propriedade RuntimeIdentifier
ou na propriedade RuntimeIdentifiers
ao migrar um projeto Xamarin.iOS para o .NET para iOS:
Valor | RuntimeIdentifier | RuntimeIdentifiers |
---|---|---|
ARMv7 | ios-arm | |
ARMv7s | ios-arm | |
ARMv7+ARMv7s | ios-arm | |
ARM64 | ios-arm64 | |
ARMv7+ARM64 | ios-arm;ios-arm64 | |
ARMv7+ARMv7s+ARM64 | ios-arm;ios-arm64 | |
x86_64 | iossimulator-x64 | |
i386 | iossimulator-x86 | |
x86_64+i386 | iossimulator-x86;iossimulator-x64 |
Importante
Se você tiver vários identificadores de runtime, use a propriedade RuntimeIdentifiers
em vez da propriedade RuntimeIdentifier
.
A seguinte tabela mostra como converter as propriedades MtouchArch
e XamMacArch
na propriedade RuntimeIdentifier
ao migrar um projeto Xamarin.Mac para o .NET para macOS+:
Propriedade | RuntimeIdentifier |
---|---|
x86_64 | osx-x64 |
A seguinte tabela mostra como converter as propriedades MtouchArch
e XamMacArch
na propriedade RuntimeIdentifier
ao migrar um projeto Xamarin.tvOS para o .NET para tvOS:
Propriedade | RuntimeIdentifier |
---|---|
ARM64 | tvos-arm64 |
x86_64 | tvossimulator-x64 |
Para obter mais informações sobre a propriedade RuntimeIdentifier
, consulte RuntimeIdentifier. Para obter mais informações sobre identificadores de runtime, confira Catálogo do .NET RID.
Converter em UseNativeHttpHandler
A seguinte tabela mostra como converter as propriedades HttpClientHandler
e MtouchHttpClientHandler
na propriedade UseNativeHttpHandler
ao migrar um projeto do Xamarin Apple para o .NET 8:
Valor | UseNativeHttpHandler |
---|---|
HttpClientHandler | false |
NSUrlSessionHandler | não definir |
CFNetworkHandler | não definir |
Alterações em outros itens
A seguinte tabela mostra como mapear outros itens em projetos do Xamarin Apple para projetos do .NET:
Item | Descrição | .NET | Conversão de projeto |
---|---|---|---|
LinkDescription |
Arquivos XML adicionais para o vinculador gerenciado. | Idêntico | Copiar |
Alterações em Info.plist
Alguns valores foram movidos de Info.plist para o arquivo de projeto.
MinimumOSVersion e LSMinimumSystemVersion
As propriedades MinimumOSVersion
e LSMinimumSystemVersion
devem ser convertidas na propriedade SupportedOSPlatformVersion
em projetos do .NET 8. Para obter mais informações, consulte Garantir que MinimumOSVersion seja consistente com SupportedOSPlatformVersion.