Crie propriedades para iOS, Mac Catalyst, macOS e tvOS
As propriedades do MSBuild controlam o comportamento dos destinos . Eles são especificados dentro do arquivo de projeto, por exemplo, MyApp.csproj, dentro de um MSBuild PropertyGroup.
AltoolPath
O caminho completo para a ferramenta altool
.
O comportamento padrão é usar xcrun altool
.
AppBundleDir
O local do pacote de aplicativos criado.
AppBundleExtraOptions
Argumentos adicionais avançados para a criação de pacotes de aplicativos.
O conjunto válido de argumentos depende da plataforma.
Normalmente, eles não devem ser usados, a menos que especificado por um engenheiro da Microsoft.
Ícone do aplicativo
O grupo de itens AppIcon
pode ser usado para especificar um ícone de aplicativo para o aplicativo.
O valor da propriedade deve apontar para o nome de ficheiro de um recurso de imagem .appiconset
(para iOS, macOS e Mac Catalyst) ou .brandassets
(para tvOS) dentro de um catálogo de ativos.
Exemplo:
<PropertyGroup>
<!-- The value to put in here for the "Resources/MyImages.xcassets/MyAppIcon.appiconset" resource would be "MyAppIcon" -->
<AppIcon>MyAppIcon</AppIcon>
</PropertyGroup>
Ver também:
- O grupo de itens AlternateAppIcon.
- A propriedade IncludeAllAppIcons.
Versão de Exibição da Aplicação
Se definido, especifica o valor CFBundleShortVersionString
no manifesto do aplicativo (Info.plist
).
Esta é uma propriedade que suporta .NET "Single Project".
Consulte OneDotNetSingleProject para obter mais informações.
ApplicationId
Se definido, especifica o valor CFBundleIdentifier
no manifesto do aplicativo (Info.plist
).
Esta é uma propriedade que suporta .NET "Single Project".
Consulte OneDotNetSingleProject para obter mais informações.
Título da Aplicação
Se definido, especifica o CFBundleDisplayName
no manifesto do aplicativo (Info.plist
).
Esta é uma propriedade que suporta .NET "Single Project".
Consulte OneDotNetSingleProject para obter mais informações.
Versão da Aplicação
Se definido, especifica o CFBundleVersion
no manifesto do aplicativo (Info.plist
).
Esta é uma propriedade que suporta .NET "Single Project".
Consulte OneDotNetSingleProject para obter mais informações.
ArchiveBasePath
O local onde os arquivos são armazenados no Windows para uma compilação remota.
O padrão é: %LocalAppData%\Xamarin\iOS\Archives
Aplicável apenas a projetos iOS (uma vez que apenas projetos iOS podem ser criados remotamente a partir do Windows).
ArchiveOnBuild
Se um arquivo Xcode deve ser criado no final da compilação.
BGenEmitDebugInformation
Se a ferramenta bgen
(o gerador de vinculação) deve emitir informações de depuração ou não.
O comportamento padrão é true
quando a propriedade Debug
está definida como true
.
BGenExtraArgs
Quaisquer argumentos adicionais para a ferramenta bgen
(o gerador de ligações).
BGenToolExe
O nome do executável bgen
(uma ferramenta usada por projetos de vinculação para gerar associações).
O comportamento padrão é usar a ferramenta bgen
fornecida com nossa carga de trabalho.
BGenToolPath
O diretório onde o bgen
(BGenToolExe) está localizado.
O comportamento padrão é usar a ferramenta bgen
fornecida com nossa carga de trabalho.
BuildIpa
Se um pacote (.ipa) deve ser criado para o pacote de aplicativos no final da compilação.
Aplicável apenas a projetos iOS e tvOS.
Consulte CreatePackage para projetos macOS e Mac Catalyst.
CodesignAlocar
O caminho para a ferramenta codesign_allocate
.
Por padrão, esse valor é detetado automaticamente.
CodesignDependeDe
Este é um ponto de extensão para a compilação: um programador pode adicionar quaisquer alvos a esta propriedade para executar esses alvos antes que o pacote de aplicação seja assinado.
Exemplo:
<PropertyGroup>
<CodesignDependsOn>$(CodesignDependsOn);DoThisBeforeCodesign</CodesignDependsOn>
</PropertyGroup>
<Target Name="DoThisBeforeCodesign">
<Exec Command="echo This is executed right before the app is signed." />
</Target>
CodesignDireitos
O caminho para o arquivo de direitos que especifica os direitos que o aplicativo requer.
Normalmente "Entitlements.plist".
Definiremos automaticamente como "Entitlements.plist" se esse arquivo existir no diretório raiz do projeto.
Isso pode ser evitado definindo a propriedade EnableDefaultCodesignEntitlements como false
.
CodesignExtraArgs
Argumentos extras passados para a ferramenta 'codesign' ao assinar o pacote de aplicativos.
CodesignKey
Especifica a chave de assinatura de código a ser usada ao assinar o pacote de aplicativos.
CodesignKeychain
As chaves a serem usadas durante a assinatura de código.
Chave de Assinatura de Código
Especifica a chave de assinatura de código a ser usada ao assinar o pacote de aplicativos.
Aplicável apenas a aplicativos macOS e Mac Catalyst, mas é recomendado usar a propriedade CodesignKey em vez disso (que funciona em todas as plataformas).
CodesignProvision
Especifica o perfil de provisionamento a ser usado ao assinar o pacote de aplicativos.
CodesignResourceRules
O caminho para o ResourceRules.plist a ser copiado para o pacote de aplicativos.
CodesignRequireProvisioningProfile
Especifica se um perfil de provisionamento é necessário ao assinar o pacote de aplicativos.
Por padrão, exigimos um perfil de provisionamento se:
- macOS, Mac Catalyst: um perfil de provisionamento foi especificado (com a propriedade CodesignProvision).
- iOS, tvOS, watchOS: a criação para dispositivo ou um arquivo de direitos foi especificada (com a propriedade CodesignEntitlements).
Definir essa propriedade como true
ou false
substituirá a lógica padrão.
CreateAppBundleDependsOn
Este é um ponto de extensão para a compilação: um desenvolvedor pode adicionar quaisquer destinos a essa propriedade para executar esses destinos ao criar o pacote de aplicativos.
Exemplo:
<PropertyGroup>
<CreateAppBundleDependsOn>$(CreateAppBundleDependsOn);DoThisBeforeCreatingAppBundle</CreateAppBundleDependsOn>
</PropertyGroup>
<Target Name="DoThisBeforeCreatingAppBundle">
<Exec Command="echo This is executed before the app bundle is created." />
</Target>
CreateIpaDependsOn
Este é um ponto de extensão para o build: um desenvolvedor pode adicionar quaisquer alvos a essa propriedade para executar esses alvos ao criar um IPA.
Aplicável a todas as plataformas que constroem arquivos IPA (atualmente iOS e tvOS).
Exemplo:
<PropertyGroup>
<CreateIpaDependsOn>$(CreateIpaDependsOn);DoThisBeforeCreatingIPA</CreateIpaDependsOn>
</PropertyGroup>
<Target Name="DoThisBeforeCreatingIPA">
<Exec Command="echo This is executed before the IPA is created." />
</Target>
CreatePackage
Se um pacote (.pkg) deve ser criado para o pacote de aplicativos no final da compilação.
Aplicável apenas a projetos macOS e Mac Catalyst.
Veja BuildIpa para projetos iOS e tvOS.
CompilaçãoEspecíficaDoDispositivo
Se a compilação deve ser específica para o dispositivo selecionado.
Aplicável a todas as plataformas que suportam compilações específicas do dispositivo (atualmente iOS e tvOS).
CaminhoDeSaídaIntermediáriaEspecíficoDoDispositivo
O caminho de saída intermediário a ser usado quando compilações específicas do dispositivo estão habilitadas.
Aplicável a todas as plataformas que suportam compilações específicas do dispositivo (atualmente iOS e tvOS).
DeviceSpecificOutputPath
O caminho de saída a ser usado quando compilações específicas do dispositivo estiverem habilitadas.
Aplicável a todas as plataformas que suportam compilações específicas do dispositivo (atualmente iOS e tvOS).
DittoPath
O caminho completo para o executável ditto
.
O comportamento padrão é usar /usr/bin/ditto
.
EmbedOnDemandResources
Se os recursos sob demanda devem ser incorporados ao pacote de aplicativos.
Padrão: verdadeiro
AtivarAssinaturaDeCódigo
Se a assinatura de código estiver habilitada.
Normalmente, a compilação determinará automaticamente se a assinatura de código é necessária; Esta deteção automática pode ser substituída por esta propriedade.
Ativar Presets de Assinatura de Código
Consulte CodesignEntitlements.
AtivarRecursosSobDemanda
Se os recursos sob demanda estiverem habilitados.
Padrão: false para macOS, true para todas as outras plataformas.
AtivarAssinaturaDePacotes
Se o .pkg que foi criado (se CreatePackage
tiver sido ativado) deve ser assinado.
Aplicável apenas ao macOS e Mac Catalyst.
EnableSGenConc
Habilita o modo simultâneo para o coletor de lixo SGen.
Aplicável apenas a iOS, tvOS e Mac Catalyst (quando não estiver usando NativeAOT).
ManifestoDeAplicaçãoGerado
Se um manifesto de aplicação (Info.plist
) deve ser gerado.
Padrão: verdadeiro
GeneratedSourcesDir
Onde a origem gerada pelo gerador é salva.
IncluirTodosOsÍconesDeAplicação
Defina a propriedade IncludeAllAppIcons
como true para incluir automaticamente todos os ícones de aplicativos de todos os catálogos de ativos no aplicativo.
Exemplo:
<PropertyGroup>
<IncludeAllAppIcons>true</IncludeAllAppIcons>
</PropertyGroup>
Ver também:
- O grupo de itens AlternateAppIcon.
- A propriedade AppIcon.
Versão Mínima do iOS
Especifica a versão mínima do iOS em que o aplicativo pode ser executado.
Aplicável ao iOS; definir esse valor definirá SupportedOSPlatformVersion para projetos iOS (apenas).
IPhoneResourcePrefix
O diretório onde os recursos são armazenados (esse prefixo será removido ao copiar recursos para o pacote de aplicativos).
Aplicável a projetos iOS, tvOS e Mac Catalyst.
Consulte também MonoMacResourcePrefix e XamMacResourcePrefix.
IpaIncludeArtwork
Se obras de arte devem ser incluídas no IPA.
Aplicável apenas a projetos iOS e tvOS.
IpaPackageName
Especifica o nome do arquivo .ipa resultante (sem o caminho) ao criar um pacote IPA (consulte BuildIpa). IpaPackagePath substituirá esse valor.
Aplicável apenas a projetos iOS e tvOS.
IpaPackageDir
Especifica o diretório do arquivo .ipa resultante ao criar um pacote IPA (consulte BuildIpa). IpaPackagePath substituirá esse valor.
Aplicável apenas a projetos iOS e tvOS.
IpaPackagePath
Especifica o caminho para o arquivo .ipa resultante ao criar um pacote IPA (consulte BuildIpa).
Aplicável apenas a projetos iOS e tvOS.
IsAppExtension
Se um projeto for uma extensão de aplicativo.
IsBindingProject
Se um projeto for um projeto vinculativo.
IsXPCService
Se uma extensão macOS for um serviço xpc.
Aplicável apenas a projetos macOS.
Modo de Ligação
Especifica o modo de link para o projeto (None
, SdkOnly
ou Full
).
Aplicável a projetos macOS, mas esta propriedade está descontinuada. Use TrimMode em vez disso.
Consulte também MtouchLink.
LigarComBibliotecasDoSistemaSwift
Se definido como true
, a compilação informará ao vinculador nativo onde encontrar as bibliotecas de sistema do Swift.
Isso é útil quando uma biblioteca nativa usa o Swift de alguma forma, caso em que o vinculador nativo precisa saber onde encontrar as bibliotecas do sistema do Swift.
Atualmente, isso significa que esses argumentos serão passados para o vinculador nativo:
- -L/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/[plataforma]
- -L/Applications/Xcode.app/Contents/Developer/Platforms/[platform].platform/Developer/SDKs/[platform].sdk/usr/lib/swift
O conjunto exato de argumentos pode mudar no futuro.
MacCatalystMinimumVersion
Especifica a versão mínima do Mac Catalyst (iOS) em que o aplicativo pode ser executado.
Aplicável ao Mac Catalyst; ao definir este valor, irá definir SupportedOSPlatformVersion para projetos Mac Catalyst (apenas).
MaciOSPrepareForBuildDependsOn
Propriedade delimitada por ponto e vírgula que pode ser usada para estender o processo de compilação. Os destinos MSBuild adicionados a essa propriedade serão executados no início da compilação para os tipos de projeto de aplicativo e biblioteca. Esta propriedade está vazia por padrão.
Exemplo:
<PropertyGroup>
<MaciOSPrepareForBuildDependsOn>$(MaciOSPrepareForBuildDependsOn);MyCustomTarget</MaciOSPrepareForBuildDependsOn>
</PropertyGroup>
<Target Name="MyCustomTarget" >
<Message Text="Running target: 'MyCustomTarget'" Importance="high" />
</Target>
Esta propriedade foi introduzida no .NET 9.
VersãoMínimaMacOS
Especifica a versão mínima do macOS em que o aplicativo pode ser executado.
Aplicável ao macOS; definir esse valor definirá SupportedOSPlatformVersion para projetos macOS (apenas).
MacOSXSdkVersion
A versão do SDK do macOS a ser usada para a compilação.
Padrão: detetado automaticamente de acordo com a versão padrão fornecida com o Xcode selecionado.
Consulte também MtouchSdkVersion .
MdimportPath
O caminho completo para a ferramenta mdimport
.
O comportamento padrão é usar xcrun mdimport
.
MetalLibPath
O caminho completo para a ferramenta metallib
(o Metal Linker).
O comportamento padrão é usar xcrun metallib
.
MetalPath
O caminho completo para o compilador Metal.
O comportamento padrão é usar xcrun metal
.
MmpDebug
Habilita o modo de depuração para a criação de pacotes de aplicativos.
Aplicável apenas a projetos macOS.
Consulte também MtouchDebug.
MonoBundlingExtraArgs
Argumentos adicionais especificando como criar o pacote de aplicativos.
Aplicável apenas a projetos macOS.
Esta propriedade está obsoleta, use AppBundleExtraOptions em vez disso.
MonoMacResourcePrefix
O diretório onde os recursos são armazenados (esse prefixo será removido ao copiar recursos para o pacote de aplicativos).
Aplicável apenas a projetos macOS.
Consulte também IPhoneResourcePrefix e XamMacResourcePrefix .
MtouchDebug
Habilita o modo de depuração para a criação de pacotes de aplicativos.
Aplicável a projetos iOS, tvOS e Mac Catalyst.
Consulte também MmpDebug.
MtouchEnableSGenConc
Habilita o modo simultâneo para o coletor de lixo SGen.
Aplicável apenas ao iOS, tvOS e Mac Catalyst quando não estiver usando o NativeAOT.
Esta propriedade foi preterida, use EnableSGenConc em vez disso.
MtouchExtraArgs
Argumentos adicionais especificando como criar o pacote de aplicativos.
Aplicável apenas a projetos iOS, tvOS e Mac Catalyst.
Esta propriedade foi preterida, use AppBundleExtraOptions em vez disso.
MtouchInterpreter
Habilita o intérprete e, opcionalmente, usa uma lista de assemblies, separados por vírgula, para interpretar (se estiverem prefixados com um sinal de subtração, o assembly será, em vez disso, compilado por AOT). 'all' pode ser usado para especificar todos os assemblies. Este argumento pode ser especificado várias vezes.
Exemplo:
<PropertyGroup>
<!-- interpret all assemblies -->
<MtouchInterpreter>all</MtouchInterpreter>
<!-- AOT-compile all assemblies, except System.dll, which will be interpreted. -->
<MtouchInterpreter>System</MtouchInterpreter>
<!-- interpret all assemblies, except System.Core.dll, which will be AOT-compiled. -->
<MtouchInterpreter>all,-System.Core</MtouchInterpreter>
</PropertyGroup>
Uma abreviatura para o MtouchInterpreter
é definir UseInterpreter=true
, que é equivalente a MtouchInterpreter=all
.
Se ambos os UseInterpreter
e MtouchInterpreter
forem definidos, então MtouchInterpreter
tem precedência.
Aplicável a aplicativos iOS, tvOS e Mac Catalyst (quando não estiver usando NativeAOT).
O comportamento padrão é não habilitar o interpretador.
Observação
MAUI altera o padrão definindo UseInterpreter=true
para a configuração "Debug"
.
MtouchLink
Especifica o modo de link para o projeto (None
, SdkOnly
, Full
).
Esta propriedade é aplicável a projetos iOS, tvOS e Mac Catalyst, mas está obsoleta; use TrimMode em vez disso.
Consulte também LinkMode.
MtouchSdkVersion
A versão iOS ou tvOS SDK a ser usada para a compilação.
Padrão: detetado automaticamente de acordo com a versão padrão fornecida com o Xcode selecionado.
Consulte também MacOSXSdkVersion.
MtouchUseLlvm
Uma propriedade booleana que especifica se a compilação AOT deve ser feita usando LLVM.
Aplicável a projetos iOS, tvOS e Mac Catalyst.
Padrão:
- No iOS e tvOS: ativado para builds de lançamento (onde
Configuration="Release"
). - No Mac Catalyst: nunca ativado por padrão.
NoBindingEmbedding
Uma propriedade booleana que especifica se as bibliotecas nativas em projetos de vinculação devem ser incorporadas no assembly gerenciado ou colocadas em um diretório .resources
ao lado do assembly gerenciado.
O valor padrão é true
(o que significa que as bibliotecas nativas não serão incorporadas no assembly gerenciado).
Observação
Xcframeworks não funcionará corretamente se incorporado dentro do assembly gerenciado (se essa propriedade não estiver true
).
NoDSymUtil
Uma propriedade booleana que especifica se a geração .dSYM deve ser desabilitada.
Padrão:
-
true
para iOS e tvOS ao compilar para o simulador. -
true
para macOS e Mac Catalyst, a menos que crie um arquivo (ArchiveOnBuild=true
)
Isso significa que o arquivo .dSYM será gerado nos seguintes casos (por padrão):
- No iOS e tvOS ao criar para o dispositivo.
- No macOS e Mac Catalyst ao criar um ficheiro de arquivo (
ArchiveOnBuild=true
).
OnDemandResourcesInitialInstallTags
Uma propriedade string que especifica as tags de instalação inicial para recursos sob demanda.
OnDemandResourcesPrefetchOrder
Uma propriedade string que especifica a ordem de pré-busca para recursos sob demanda.
UrlDeRecursosSobDemanda
Uma propriedade string que especifica a url do recurso para recursos sob demanda.
OptimizePNGs
Uma propriedade booleana que especifica se as imagens png devem ser otimizadas.
OtimizarDependênciasDeImagensPng
Este é um ponto de extensão para a compilação: um desenvolvedor pode adicionar quaisquer destinos a essa propriedade para executar esses destinos antes que quaisquer imagens png sejam otimizadas.
Exemplo:
<PropertyGroup>
<OptimizePngImagesDependsOn>$(OptimizePngImagesDependsOn);MyCustomTarget</OptimizePngImagesDependsOn>
</PropertyGroup>
<Target Name="MyCustomTarget" >
<Message Text="Running target: 'MyCustomTarget'" Importance="high" />
</Target>
Otimizar Listas de Propriedades
Uma propriedade booleana que especifica se as listas de propriedades (plists) devem ser otimizadas.
OtimizarListasDePropriedadesDependeDe
Este é um ponto de extensão para a compilação: um desenvolvedor pode adicionar quaisquer destinos a essa propriedade para executar esses destinos antes que quaisquer listas de propriedades (plists) sejam otimizadas.
Exemplo:
<PropertyGroup>
<OptimizePropertyListsDependsOn>$(OptimizePropertyListsDependsOn);MyCustomTarget</OptimizePropertyListsDependsOn>
</PropertyGroup>
<Target Name="MyCustomTarget" >
<Message Text="Running target: 'MyCustomTarget'" Importance="high" />
</Target>
Chave de Assinatura de Pacote
Especifica a chave de assinatura de código para assinar o pacote ao criar .pkg para um projeto macOS e Mac Catalyst.
Aplicável apenas a aplicações macOS e Mac Catalyst.
EmbalagemExtraArgs
Especifica quaisquer argumentos extras a serem passados para a ferramenta 'productbuild' ao criar .pkg para um projeto macOS e Mac Catalyst.
Aplicável apenas a aplicações macOS e Mac Catalyst.
PkgPackagePath
Especifica o caminho para o arquivo .pkg resultante ao criar um pacote (consulte CreatePackage).
Aplicável apenas a aplicações macOS e Mac Catalyst.
PlutilPath
O caminho completo para a ferramenta de linha de comandos plutil
.
O comportamento padrão é usar xcrun plutil
.
PngCrushPath
O caminho completo para a ferramenta de linha de comando pngcrush
.
O comportamento padrão é usar xcrun pngcrush
.
ProcessEnums
Uma propriedade booleana que especifica se enums devem ser processados como uma definição de api em projetos de vinculação.
ProductBuildPath
O caminho completo para a ferramenta productbuild
.
O comportamento padrão é usar xcrun productbuild
.
Definição do Produto
O modelo de definição de produto (.plist
) a ser usado ao criar a definição de produto para passar para a ferramenta de compilação de produto ao criar pacotes (.pkg).
Aplicável apenas a aplicações macOS e Mac Catalyst.
SímboloNativoDeReferência
O grupo de itens ReferenceNativeSymbol
pode ser usado para especificar como devemos lidar com um determinado símbolo nativo: ignorá-lo ou pedir ao vinculador nativo para mantê-lo (passando o símbolo como -u ...
ou em um arquivo de símbolo para o vinculador nativo).
Existem dois tipos de metadados suportados:
-
SymbolType
: ouObjectiveCClass
,Function
ouField
. Usado para calcular o nome nativo completo de um símbolo (por exemplo, o símbolo nativo para a classe Objective-CMyClass
é_OBJC_CLASS_$_MyClass
, enquanto para uma funçãoMyFunction
é apenas_MyFunction
. -
SymbolMode
:Ignore
ou não definido.Ignore
significa não passar o símbolo dado para o vinculador nativo, o padrão é fazê-lo.
SymbolType
é necessário, enquanto SymbolMode
não é.
Exemplo de símbolo a manter:
<ItemGroup>
<ReferenceNativeSymbol Include="MyClass" SymbolType="ObjectiveCClass" />
</ItemGroup>
Exemplo de símbolo a ignorar:
<ItemGroup>
<ReferenceNativeSymbol Include="MyClass" SymbolType="ObjectiveCClass" SymbolMode="Ignore" />
</ItemGroup>
RequireLinkWithAttributeForObjectiveCClassSearch
Verificaremos automaticamente todas as bibliotecas em busca de classes gerenciadas que mapeiam para classes de Objective-C existentes e, em seguida, criaremos uma referência nativa no momento da compilação para essas classes Objective-C.
Dessa forma, o vinculador nativo não removerá essas classes Objective-C, pensando que elas não são usadas.
No entanto, isso pode causar um problema se uma classe gerenciada fizer referência a uma classe Objective-C que não existe. A correção adequada para isso é remover essas classes gerenciadas da compilação, mas isso pode ser complicado, em particular se a classe gerenciada vier de uma referência binária (como NuGet).
Nesses casos, é possível definir a propriedade RequireLinkWithAttributeForObjectiveCClassSearch
como true
para que só verifiquemos bibliotecas com o atributo [LinkWith]
para Objective-C classes:
<PropertyGroup>
<RequireLinkWithAttributeForObjectiveCClassSearch>true</RequireLinkWithAttributeForObjectiveCClassSearch>
</PropertyGroup>
StripPath
O caminho completo para a ferramenta de linha de comandos strip
.
O comportamento padrão é usar xcrun strip
.
SupportedOSPlatformVersion
Especifica a versão mínima do sistema operacional em que o aplicativo pode ser executado.
Também é possível usar uma propriedade específica da plataforma:
TrimMode
Especifica a granularidade de corte.
As opções válidas são:
-
full
: Corte todas as montagens. -
partial
: Aparar conjuntos que optaram por cortar. -
copy
: Não corte em montagens.
Consulte TrimMode para obter mais informações sobre a propriedade TrimMode
.
Observação
Por razões técnicas, a ferramenta de otimização deve ser executada para todos os projetos iOS, tvOS, macOS e Mac Catalyst, mesmo que nenhum assembly deva ser otimizado. Por esse motivo, não é válido desativar o corte definindo PublishTrimmed como false
- para desativar o corte, defina TrimMode=copy
em vez disso (um erro de compilação será gerado se PublishTrimmed
estiver definido como false
).
A propriedade TrimMode
é equivalente às propriedades existentes MtouchLink (para iOS, tvOS e Mac Catalyst) e LinkMode (para macOS), mas os valores de propriedades válidos são diferentes (mesmo que a semântica seja a mesma):
MtouchLink/LinkMode | TrimMode |
---|---|
Completo | cheio |
SdkOnly | parcial |
Nenhum | cópia |
No futuro, as propriedades MtouchLink
e LinkMode
serão preteridas, use TrimMode
em vez disso.
O modo de corte padrão depende de vários fatores e também pode mudar no futuro.
Os valores padrão atuais (a partir do .NET 9) são:
- iOS e iOS:
partial
ao criar para o dispositivocopy
ao criar para o simulador. - macOS: sempre
copy
. - Mac Catalyst:
partial
quando construir para a configuração"Release"
,copy
caso contrário.
Exceções:
- O valor padrão é sempre
full
ao criar com NativeAOT. - MAUI altera o valor padrão para
copy
ao construir para o de configuraçãoDebug
e o interpretador é ativado usando UseInterpreter (que o MAUI também habilita por padrão ao usar a configuração"Debug"
).
Observação
O modo de corte padrão pode mudar no futuro.
Versão Mínima do tvOS
Especifica a versão mínima do tvOS em que o aplicativo pode ser executado.
Aplicável ao tvOS; definir esse valor definirá SupportedOSPlatformVersion para projetos tvOS (apenas).
Usar Execução Reforçada
Uma propriedade booleana que especifica se um tempo de execução protegido está habilitado.
Aplicável a projetos macOS e Mac Catalyst.
UseInterpreter
Habilita o intérprete (para todas as assemblagens).
Isso equivale a definir MtouchInterpreter=all
.
Aplicável a aplicativos iOS, tvOS e Mac Catalyst (quando não estiver usando NativeAOT).
O comportamento padrão é não habilitar o interpretador.
Observação
MAUI altera o padrão definindo UseInterpreter=true
para a configuração "Debug"
.
Consulte MtouchInterpreter para obter mais informações.
UseNativeHttpHandler
Se o manipulador http nativo deve ser o manipulador http padrão ou não.
Padrão: true para todas as plataformas, exceto macOS.
XamMacResourcePrefix
O diretório onde os recursos são armazenados (esse prefixo será removido ao copiar recursos para o pacote de aplicativos).
Aplicável a projetos macOS.
Consulte também as referências IPhoneResourcePrefix e MonoMacResourcePrefix.
ZipPath
O caminho completo para a ferramenta de linha de comando zip
.
O comportamento padrão é usar xcrun zip
.