Fehler XA1048 in .NET for Android

Beispielnachrichten

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

Die Anwendung hat das Starten über ein Android.App.Instrumentation aktiviert, entweder durch Festlegen von $(AndroidUseInstrumentation) oder $(EnableMSTestRunner) bis true, aber es wurde kein <instrumentation>-Element in AndroidManifest.xml gefunden.

Dies unterscheidet sich von XA1043, das gemeldet wird, wenn die Anwendung weder ein startfähiges <activity> noch ein <instrumentation> besitzt.

Lösung

Deklarieren Sie eine Instrumentierung in der Anwendung:

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

Sie können auch die Klasse angeben, die explizit mit der gestartet werden soll $(AndroidInstrumentation) Sie die MSBuild-Eigenschaft oder legen Sie $(AndroidUseInstrumentation) auf false fest, um stattdessen die Aktivität der Anwendung zu starten.