.NET para o erro XA1048 do Android

Mensagens de exemplo

error XA1048: 'obj/Debug/net11.0-android/android/AndroidManifest.xml' does not contain an <instrumentation> element. Add an Android.App.Instrumentation subclass to the application, or set the $(AndroidInstrumentation) MSBuild property to the name of one.

Issue

O aplicativo optou por ser iniciado por meio de um Android.App.Instrumentation, seja definindo $(AndroidUseInstrumentation) ou $(EnableMSTestRunner) para true, mas nenhum <instrumentation> elemento foi encontrado em AndroidManifest.xml.

Isso difere de XA1043, que é relatado quando o aplicativo não possui um <activity> inicializável nem um <instrumentation>.

Solução

Declare uma instrumentação no aplicativo:

[Instrumentation (Name = "com.companyname.myapp.MyInstrumentation")]
public class MyInstrumentation : Instrumentation
{
    protected MyInstrumentation (IntPtr handle, JniHandleOwnership ownership)
        : base (handle, ownership) { }
}

Você também pode especificar explicitamente o nome da classe a ser iniciada com o $(AndroidInstrumentation) propriedade do MSBuild ou defina $(AndroidUseInstrumentation) como false para iniciar a atividade do aplicativo.