.NET para o aviso do Android XA0149

Mensagens de exemplo

aviso XA0149: Ignorando Xamarin herdados. Arquivo de ambiente android '__AndroidEnvironment__abc123' do pacote NuGet 'Some.Old.Package' versão '1.2.3' no assembly '/path/to/Some.Old.Package.dll'. Arquivos de ambiente de Xamarin. Não há suporte para bibliotecas de classes android em .NET para Android. Use uma versão mais recente desse pacote NuGet ou notifique o autor da biblioteca.

aviso XA0149: Ignorando Xamarin herdados. Arquivo de ambiente android '__AndroidEnvironment__abc123' no assembly '/path/to/SomeLibrary.dll'. Arquivos de ambiente de Xamarin. Não há suporte para bibliotecas de classes android em .NET para Android. Use uma versão mais recente deste assembly ou notifique o autor da biblioteca.

Issue

Um assembly referenciado (normalmente de um Xamarin mais antigo. A biblioteca de classes do Android ou um direcionamento MonoAndroidde pacote NuGet ) contém um recurso inserido__AndroidEnvironment__*. .NET para Android não consome arquivos de ambiente contribuidos por bibliotecas de classes por meio desse mecanismo herdado, portanto, o arquivo está sendo ignorado.

Isso está intimamente relacionado ao aviso NU1703 que o NuGet emite para pacotes que ainda visam a estrutura preterida MonoAndroid .

Solução

Atualize para uma versão do pacote ou biblioteca do NuGet direcionada net-android (.NET para Android). Se você mantiver a biblioteca, recompile-a como um .NET para a biblioteca de classes do Android para que todas as variáveis de ambiente sejam produzidas no layout do AAR com .net/env/ suporte.

Se as variáveis de ambiente forem necessárias para seu aplicativo, declare-as diretamente no projeto do aplicativo usando um @(AndroidEnvironment) item:

<ItemGroup>
  <AndroidEnvironment Include="env.txt" />
</ItemGroup>