Nachfolgend werden Verhaltensweisen beschrieben, die möglicherweise bei der Verwendung von AppStudio auftreten. Für diese gibt es bekannte Workarounds oder Maßnahmen, die Sie zur Behebung des Problems durchführen können.
Um Bugs in AppStudio zu melden oder sich über diese zu informieren, besuchen Sie Support.
Installation und Einrichtung
- Wenn ich auf die .run-Datei von Linux doppelklicke, wird das Ubuntu Software Center geladen und ich erhalte eine Fehlermeldung. Weshalb?
- Beim Start von ArcGIS AppStudio tritt ein Fehler auf; die Fehlermeldung besagt, dass die Datei "api-ms-win-crt-runtime-l1-1-0.dll" fehlt.
- ArcGIS AppStudio funktioniert nicht an meinem Arbeitsplatz, an anderen Standorten gibt es aber keine Probleme.
- Die AppStudio-Konsole empfängt keine Konsolenprotokolle.
- Meine ArcGIS Runtime App stürzt unter Windows ab.
- Ich kann zum Testen meiner App kein virtuelles Android-Gerät erstellen.
- Ich habe Android Studio installiert, aber es wird von AppStudio nicht erkannt.
- Text-zu-Sprache ist in der Sprache Arabisch unter iOS 14 verfügbar.
- Meine AppStudio-5.0-App kann unter Ubuntu nicht gestartet werden.
- Unter Ubuntu 22.04 wird das AppStudio-Anmeldedialogfeld als weißer Bildschirm angezeigt.
Konfigurieren und Erweitern von Apps
- Meine vorhandene Quick Report-App wird nicht ausgeführt, und die Fehlermeldung Cannot assign to non-existing property onComposeError wird angezeigt.
- Ich kann einen Szenen-Layer in der Vorlagen-App 3D Scene Viewer nicht identifizieren.
- Meine SQL-Abfragen schlagen fehl, wobei die Fehlermeldung besagt, dass die Datenbanktabelle aktuell gesperrt ist oder dass die Verbindung noch verwendet wird.
- Die AppFramework.SecureStorage-Methoden value und setValue geben unter macOS den folgenden Fehler in der App zurück: The username or passphrase you entered is not correct.
- Die App verhält sich bei Verwendung der SwiftKey-Tastatur unter Android nicht wie erwartet.
- Wenn ein falscher apiKey-Wert an Karten vom Typ "TiledLayer" oder "VectorTiledLayer" übergeben wird, wird die Karte mit einem unerwarteten Style angezeigt.
Erstellen von Installationsdateien
- Ich kann meine App für iOS nicht erstellen, ohne ein Zertifikat bereitzustellen.
- Build-Fehlermeldung Provisioning profile "ABC" has an app ID "com.abc.xyz", which does not match the bundle ID "com.xyz.abc" erhalten.
- Build-Fehlermeldung Provisioning profile is not an "ABC" profile erhalten.
- Build-Fehlermeldung Code signing error: Provisioning profile "ABC" doesnt include signing certificate "DEF" erhalten.
- Build-Fehlermeldung Code signing error: Provisioning profile "ABC" doesnt support the Associated Domains capability erhalten.
- Build-Fehlermeldung Invalid Android signing parameters erhalten.
Einreichung beim Store
Installation und Einrichtung
Wenn ich auf die .run-Datei von Linux doppelklicke, wird das Ubuntu Software Center geladen und ich erhalte eine Fehlermeldung. Weshalb?
Wenn Sie eine .run-Datei aus dem Internet herunterladen, ist deren Ausführungsberechtigung deaktiviert. Um sie zu aktivieren, gehen Sie wie folgt vor:
- Klicken Sie mit der rechten Maustaste auf die .run-Datei.
- Navigieren Sie zu der Registerkarte Berechtigungen.
- Aktivieren Sie das Kontrollkästchen Ausführen der Datei als Programm zulassen.
- Klicken Sie auf Close.
Wenn Sie jetzt auf die .run-Datei doppelklicken, wird der Installationsassistent gestartet.
Beim Start von ArcGIS AppStudio tritt ein Fehler auf; die Fehlermeldung besagt, dass die Datei "api-ms-win-crt-runtime-l1-1-0.dll" fehlt.
Mit dieser Meldung wird angegeben, dass die Komponenten von Universal C Runtime in Windows, die zum Ausführen von AppStudio erforderlich sind, fehlen. Diese Komponenten wurden in einer Windows-Aktualisierung bereitgestellt, die Sie über den Windows Support herunterladen können.
ArcGIS AppStudio funktioniert nicht an meinem Arbeitsplatz, an anderen Standorten gibt es aber keine Probleme.
Am wahrscheinlichsten ist, dass an Ihrem Arbeitsplatz der Internetzugriff über ein regelbasiertes automatisches Konfigurationsskript gesteuert wird. Ein derartiger Proxy wird von AppStudio aktuell nicht erkannt, wodurch Verbindungen mit ArcGIS Online beeinträchtigt werden können. In diesem Fall müssen Sie das automatische Konfigurationsskript deaktivieren und den Proxyserver manuell mit der richtigen Kombination von Adresse und Port konfigurieren.
Unter Windows finden Sie die entsprechenden Optionen unter Einstellungen für lokales Netzwerk in den Internetoptionen.
Das liegt wahrscheinlich daran, dass die vom Konsolenwerkzeug angezeigten UDP-Nachrichten (User Datagram Protocol) von der Firewall gefiltert oder blockiert werden. Sie können dieses Problem beheben, indem Sie entweder Ihre Firewall deaktivieren oder Ausnahmen für UDP-Pakete während der Verwendung des Konsolenwerkzeugs zulassen. Für ein vertrauenswürdigeres Netzwerk können Sie auch die Firewall zurücksetzen und bei einer entsprechenden Nachfrage angeben, dass UDP-Pakete zugelassen werden sollen.
Das liegt wahrscheinlich daran, dass der Grafiktreiber Ihres Windows-Computers nicht den Mindestanforderungen entspricht. Bei der Ausführung von ArcGIS Runtime-Apps ist mindestens OpenGL 2.1 für 2D-Kartenansichten erforderlich und für 3D-Szenenansichten OpenGL 3.2. Es wird empfohlen, stets den aktuellen Treiber zu verwenden.
Wenn Sie virtuelle Maschinen zum Testen Ihrer App auf mehreren Plattformen verwenden, können Sie keine Android-Emulatoren auf diesen ausführen. Das liegt daran, dass Android-Emulatoren HAXM (Hardware Accelerated Execution Manager) verwenden, eine Virtualisierungs-Engine, die keine geschachtelten virtuellen Maschinen unterstützt Sie können einen Android-Emulator nur auf einer physischen Maschine ausführen.
AppStudio sucht zunächst im Standardverzeichnis von Android Studio nach Dateien. Wenn der Speicherort des Android SDK in Qt Creator konfiguriert wurde, wird stattdessen dieser Pfad von AppStudio verwendet.
Die Standardpfade zum SDK lauten für die unterschiedlichen Plattformen wie folgt:
- Windows: Users/YourName/AppData/Local/Android/sdk
- macOS: ~/Library/Android/sdk
- Linux: ~/Android/Sdk
Die Dateien in der virtuellen Geräteliste müssen sich in folgenden Ordnern befinden:
- Die AVD-Konfiguration wird aus den Unterverzeichnissen von ~/.android gelesen.
- Der Emulator-Authentifizierungscode wird aus ~/.emulator_console_auth_token gelesen.
- Der adb-Befehlspfad lautet <SDKPATH>/platform-tools/adb.
- Der Emulator-Befehlspfad lautet <SDKPATH>/tools/emulator.
Auf Geräten unter iOS 14 oder höher sind nicht alle Stimmen der Text-zu-Sprache-Funktion standardmäßig auf dem Gerät verfügbar. Aus diesem Grund erfolgt die Ausgabe möglicherweise nicht in der erwarteten Sprache, wenn Warnungen vorgelesen werden. Meist handelt es sich bei der Sprache um Arabisch.
Stimmdateien können manuell auf das Gerät heruntergeladen werden. Wechseln Sie zum Herunterladen zu Einstellungen > Bedienhilfen > VoiceOver > Sprachausgabe > Stimme, und laden Sie eine der Gerätesprache entsprechende Stimme herunter. Die Sprache des Geräts ermitteln Sie, indem Sie auf Einstellungen > Allgemein > Sprache & Region > iPhone-Sprache tippen.
Beim nächsten Start von AppStudio Player oder Ihrer erstellten App wird die heruntergeladene Stimme verwendet.
Für Apps, die mit AppStudio 5.0 erstellte erstellt wurden, muss in Ubuntu das Paket libxcb-xinerama0 installiert sein. Um das Paket zu installieren, führen Sie in einem Terminalfenster den Befehl sudo apt update und anschließend sudo apt install libxcb-xinerama0 aus. Um sicherzustellen, dass das Paket installiert ist, können Sie apt list libxcb-xinerama0 ausführen.
Damit das Anmeldedialogfeld unter dieser Version von Ubuntu ordnungsgemäß angezeigt wird, muss die Umgebungsvariable QTWEBENGINE_DISABLE_SANDBOX auf 1 festgelegt werden. Führen Sie zum Festlegen der Umgebungsvariablen den Befehl export QTWEBENGINE_DISABLE_SANDBOX=1 in einem Terminalfenster aus. Führen Sie printenv | grep QTWEBENGINE_DISABLE_SANDBOX aus, und prüfen Sie, dass QTWEBENGINE_DISABLE_SANDBOX=1 zurückgegeben wird, um sicherzustellen, dass die Umgebungsvariable korrekt festgelegt ist.
Konfigurieren und Erweitern von Apps
Meine SQL-Abfragen schlagen fehl, wobei die Fehlermeldung besagt, dass die Datenbanktabelle aktuell gesperrt ist oder dass die Verbindung noch verwendet wird.
Es handelt sich um zwei getrennte Fehler, die darauf zurückzuführen sind, dass eine zweite Abfrage unter Verwendung der Komponente "AppFramework.SQLQuery" gestartet wurde, bevor die erste Abfrage abgeschlossen wurde. Diese Fehler können vermieden werden, indem der App über die Methode finish mitgeteilt wird, dass weitere Ergebnisse der ersten Abfrage nicht benötigt werden. Alternativ können Sie alle Ergebnisse in Form von iterativen Aufrufen über die Methode next anfordern.
Die AppFramework.SecureStorage-Methoden value und setValue geben unter macOS den folgenden Fehler in der App zurück: The username or passphrase you entered is not correct.
Eine für macOS erstellte App, in der "SecureStorage" und ArcGIS Runtime-Module verwendet werden, müssen signiert werden, damit Zugriff auf das System-Schlüsselbund besteht. Weitere Informationen finden Sie unter Signieren Ihrer macOS-App.
Dies ist ein bekannter Fehler in Qt, der in einer zukünftigen Version behoben wird. Wenn von der App Vorhersagetext verwendet wird, kann der Einsatz der SwiftKey-Tastatur dazu führen, dass Eingaben und Berechnungen falsch angezeigt werden. Die SwiftKey-Tastatur kann möglicherweise nicht erneut geöffnet werden, wenn die Eingabetaste verwendet wird.
Erstellen von Installationsdateien
Im Gegensatz zu anderen Plattformen erfordern iOS-Apps zum Erstellen selbst für Testzwecke ein signiertes Produktionszertifikat. Ohne ein solches Zertifikat wird eine Fehlermeldung ausgegeben. Informationen dazu, wie Sie entsprechende Zertifikate erhalten und pflegen, finden Sie im App Distribution Guide von Apple unter Maintain signing assets. Sie müssen der App außerdem eine geeignete Bundle-ID zuweisen. Öffnen Sie dazu im Seitenbereich von AppStudio das Fenster Einstellungen, und navigieren Sie unter Plattformen zur Registerkarte iOS. Weitere Informationen finden Sie unter Signieren Ihrer iOS-App.
Dieser Fehler gibt an, dass die ausgewählte Verteilungsmethode nicht dem Typ des Provisioning-Profils, das in der Build-Anforderung angegeben wurde, entspricht. Navigieren Sie zu Einstellungen > Plattform > iOS > Verteilungsmethode, und stellen Sie sicher, dass die Verteilungsmethode dem Typ des Provisioning-Profils, das in der Build-Anforderung verwendet werden soll, entspricht.
Build-Fehlermeldung Code signing error: Provisioning profile "ABC" doesnt support the Associated Domains capability erhalten.
Dieser Fehler gibt an, dass Ihre App einen Link zu Ihrer App für die Verwendung durch andere Apps definiert, der in developers.apple.com nicht registriert ist. Weitere Informationen finden Sie in der Dokumentation von Apple unter Allowing Apps and Websites to Link to Your Content.
Dieser Fehler könnte ausgegeben werden, wenn Sie versuchen, Ihre App auf einem anderen Computer als bei vorherigen Versuchen zu erstellen. Im App-Element wird nicht die KeyStore-Datei, sondern nur eine Referenz auf ihren Speicherort gespeichert. Um zu überprüfen, ob Sie Zugriff auf die richtige KeyStore-Datei haben, navigieren Sie zu Einstellungen > Plattform > Android und vergewissern sich, dass der Pfad zur KeyStore-Datei und der Schlüsselalias korrekt sind.
Einreichung beim Store
Ursache für diesen Fehler ist entweder das Vorhandensein transparenter Pixel oder eines Alpha-Kanals im App-Symbol. Entfernen Sie diese aus dem Symbol, erstellen Sie Ihre App-Installationsdateien erneut, und reichen Sie erneut beim Store ein. Diese Beschränkung gilt nur für den iOS App Store. Auf anderen Plattformen ist die Transparenz in App-Symbolen zulässig. Sie können plattformspezifische App-Symbole angeben, indem Sie die Datei "appinfo.json" Ihres Projekts bearbeiten. Wählen Sie in AppStudio Ihre App in der Galerie aus, und klicken Sie auf Bearbeiten. Wählen Sie die Datei appinfo.json aus, und bearbeiten Sie das Element resources so, dass die appIcon-Eigenschaften für jede Plattform enthalten sind, wie im folgenden Beispiel:"resources": {
"android": {
"appIcon": "assets/android_appicon.png"
},
"ios": {
"appIcon": "assets/ios_appicon.png"
},
"linux": {
"appIcon": "linux_appicon.png"
},
"macos": {
"appIcon": "mac_appicon.png"
},
"windows": {
"appIcon": "windows_appicon.png"
},
"appIcon": "allNotSpecifiedOperatingSystems_appicon.png"
},
Beim Erstellen eines Eintrags im App Store müssen Sie eine eindeutige ID für Ihre App definieren. Diese ID hat in der Regel das Format com.yourdomain.appname. Achten Sie darauf, dass Sie dieselbe ID in Einstellungen > Plattform > Android oder Einstellungen > Plattform > iOS eingeben. Nachdem Sie die eindeutige ID eingegeben haben, müssen Sie auf Übernehmen klicken und die App in Ihre ArcGIS-Organisation hochladen, bevor Sie ein Build anfordern.
Wenn Sie eine APK-Datei an Google Play hochladen, erhalten Sie möglicherweise die Warnmeldung, dass Ihre APK-Datei eine nicht optimierte APK-Datei ist, und die Empfehlung, App-Bundles zu verwenden. Dies ist lediglich eine Warnung. Danach können Sie trotzdem weiterhin Ihre App in Google Play veröffentlichen. App-Bundles werden in Zukunft durch AppStudio unterstützt.