Ich versuche, eine einfache Karte App mit dem ArcGIS Runtime SDK für Xamarin, mit der Option Xamarin.Forms, bisher nur mit der Android-Version zu erstellen (habe noch keinen Zugang zu einem Mac für iOS). Ich kann die App problemlos auf einem Emulator ausführen. Aber wenn ich es auf meinem physischen Android-Tablet (Nexus 7 w/5.0.1) bereitstellen, stürzt die App beim Anzeigen der Karte ab. Ich habe es sogar verpackt und ein Freund hat es auf ihrem neuen Samsung-Handy bereitstellen und es stürzt dort auch ab.Xamarin Forms/Android Karte App läuft auf Emulator, stürzt aber auf dem physischen Gerät
Der Code ist extrem einfach. Hier ist das gesamte Hauptverfahren in der gemeinsamen genutzten Code Content Klasse (die ArcGIS SDK unterstützt nur den gemeinsamen Code-Ansatz):
InitializeComponent();
myMap = new Map(Basemap.CreateImagery());
// MyMapView is in the XAML markup
MyMapView.Map = myMap;
Die App stürzt mit dem „Leider (App-Namen) hat aufgehört“. In Visual Studio, enthält die Ausgabe folgendermaßen aus:
Java.Lang.IllegalArgumentException: No configs match configSpec
05-16 10:24:24.083 E/AndroidRuntime(24893): FATAL EXCEPTION: GLThread 1373
05-16 10:24:24.083 E/AndroidRuntime(24893): Process: ArcGisMapTest.Droid, PID: 24893
05-16 10:24:24.083 E/AndroidRuntime(24893): java.lang.IllegalArgumentException: No configs match configSpec
05-16 10:24:24.083 E/AndroidRuntime(24893): at android.opengl.GLSurfaceView$BaseConfigChooser.chooseConfig(GLSurfaceView.java:858)
05-16 10:24:24.083 E/AndroidRuntime(24893): at android.opengl.GLSurfaceView$EglHelper.start(GLSurfaceView.java:1023)
05-16 10:24:24.083 E/AndroidRuntime(24893): at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1400)
05-16 10:24:24.083 E/AndroidRuntime(24893): at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1239)
Basierend auf anderen Online-Beiträgen für die configSpec Fehlermeldung, das ein OpenGL Problem zu sein scheint. Aber die physischen Geräte scheinen das erforderliche OpenGL ES 2.0 zu unterstützen. Ich bin auch in der Lage bei https://developer.xamarin.com/api/type/Xamarin.Forms.OpenGLView/
Ich habe auch laufen sowohl die ESRI Xamarin.Forms Proben und die Xamarin.Android Proben auf dem Emulator und Vorrichtungen, die eine kleine Anwendung mit dem Beispielcode auszuführen, mit dem gleichen Ergebnis. Irgendwelche Ideen, um hier zu verursachen?
In welchem Gerät testen Sie es? Sie sagen, das Gerät scheint Ogl 2.0 zu unterstützen, aber ohne das Modell des Geräts ist es nicht verifizierbar. – Gusman
Lokales Tablet ist ein Asus Nexus 7 (2012), jetzt läuft 5.0.1. Getestet wurde auch auf einem Asus Nexus 7 (2013) und einem weniger als ein Jahr alten Samsung Handy (habe kein Handy/Modell). Mein Verständnis ist, dass Open GL ES 2.0 seit Android 2 unterstützt wird. –
Es hängt vom Gerät ab, aber hey, ich benutze genau das gleiche Gerät (nexus 7 2013) zum Debuggen und ich benutze gerade die Maps und ogl2. .. da ist etwas wirklich komisches. Versuchen Sie, das Xamarin.Forms.Maps-Paket und das Xamarin.GooglePlayServices.Maps-Paket aus dem .droid-Projekt zu entfernen, die Lösung zu bereinigen, die Ordner bin und obj aus dem Projekt zu löschen, die Pakete erneut hinzuzufügen und erneut zu kompilieren, manchmal mit diesen seltsamen Bugs mit Xamarin Reinigung hilft alles. – Gusman