Известные проблемы

Ниже описаны ошибки, с которыми вы могли встречаться при использовании AppStudio, для которых есть известные пути решения или действия, которые вы можете применить для корректной работы.

Чтобы сообщить или узнать больше об ошибках в AppStudio, посетите Службу поддержки.

Установка и настройка

Настройка и расширение функций приложений

Создание файлов установки

Подписка магазина

Установка и настройка

Когда я дважды щелкаю в .run файл Linux, открывается Ubuntu Software Center и появляется сообщение об ошибке. Почему?

Когда я загружаю файл .run из Интернета, разрешение на его выполнение отключено. Для его включения выполните следующее:

  1. Щелкните правой кнопкой файл .run.
  2. Перейдите на закладку Права доступа.
  3. Включите опцию Разрешить выполнение файла как программы.
  4. Щелкните Закрыть.

Теперь когда вы дважды щелкнете файл .run, откроется мастер установки.

ArcGIS AppStudio не запускается, появляется сообщение об ошибке и отсутствии файла api-ms-win-crt-runtime-l1-1-0.dll.

Такое сообщение указывает на отсутствие в Windows компонентов Universal C Runtime, необходимых для запуска AppStudio. Эти компоненты содержатся в обновлении для Windows, которое можно загрузить с Windows support.

ArcGIS AppStudio не работает на моем компьютере, но работает на других.

Наиболее вероятной причиной является то, что ваше рабочее место управляет доступом в Интернет через скрипт автоматической настройки на основе правил. В данный момент такая форма прокси не определяется AppStudio, что может повлиять на возможность приложения подключаться к ArcGIS Online. В таком случае может понадобиться отключить скрипт автоматической настройки и вручную настроить прокси-сервер через комбинацию адреса и порта.

В Windows, опции управления этим процессом можно найти в Настройках локальной сети (LAN) в Опциях интернет.

Консоль AppStudio не получает журналов.

Скорее всего это связано с тем, что сообщения User Datagram Protocol (UDP), которые показывает инструмент консоли, фильтруются или блокируются вашим брандмауером. Вы можете отключить брандмауэр или создать исключение для пакетов UDP на время работы с инструментам консоли. Также, в доверенных сетях, можно сбросить настройки брандмауэра, чтобы разрешить прохождение пакетов UDP при их обнаружении.

Мое приложение ArcGIS Runtime зависает на Windows.

Возможно драйвер графического адаптера на компьютере с Windows не соответствует минимальным требованиям. Для 2D видов карт при запуске приложений ArcGIS Runtime требуется OpenGL 2.1, для 3D сцен требуется версия 3.2. Рекомендуется использовать новейший драйвер.

Я не могу создать виртуальное устройство Android для тестирования моего приложения.

Если вы используете виртуальные машины для тестирования на нескольких платформах, вы не сможете запускать на них эмуляторы Android. Это происходит потому, что эмуляторы Android используют Hardware Accelerated Execution Manager (HAXM) – механизм визуализации, не поддерживающий вложенные виртуальные машины. Эмулятор Android можно запустить только на физической машине.

Я установил Android Studio, но AppStudio не распознает его.

AppStudio изначально ищет файлы только в местоположении по умолчанию для Android Studio. Если местоположение Android SDK было настроено в Qt Creator, AppStudio будет использовать его.

По умолчанию пути к SDK для каждой платформы выглядят так:

  • Windows: Users/YourName/AppData/Local/Android/sdk
  • macOS: ~/Library/Android/sdk
  • Linux: ~/Android/Sdk

Файлы, используемые для заполнения списка виртуальных устройств, должны быть расположены в следующих папках:

  • Конфигурация AVD считывается из поддиректорий в ~/.android.
  • Код авторизации эмулятора считывается из ~/.emulator_console_auth_token.
  • Путь команды adb: <SDKPATH>/platform-tools/adb.
  • Путь команды эмулятора: <SDKPATH>/tools/emulator.

Функция звукового воспроизведения текста работает на арабском на iOS 14.

На устройствах с iOS 14 и позднее по умолчанию доступны не все фукнции звукового воспроизведения текста. В результате, когда зачитывается текст предупреждения, можно услышать другой язык, обычно арабский.

Звуковые файлы можно загрузить на устройство вручную. Для этого перейдите в Настройки > Доступность > Закадровый голос > Речь > Голос и скачайте один из голосов, который совпадает с языком устройства. Вы можете узнать язык устройства, нажав Настройки > Общие > Язык и регион > Языки iPhone.

В следующий раз при запуске AppStudio Player или встроенного приложения будет использоваться загруженный голос.

Мое приложение AppStudio 5.0 не запускается на Ubuntu.

Для приложений, созданных с помощью AppStudio 5.0, необходимо установить на Ubuntu пакет libxcb-xinerama0. Чтобы установить этот пакет, в окне терминала запустите sudo apt update, а затем sudo apt install libxcb-xinerama0. Чтобы убедиться, что у вас установлен этот пакет, запустите apt list libxcb-xinerama0.

Диалоговое окно входа AppStudio выглядит как белый экран в Ubuntu 22.04.

Чтобы диалоговое окно отображалось в этой версии Ubuntu, переменная среды QTWEBENGINE_DISABLE_SANDBOX должна быть задана как 1. Чтобы задать эту переменную среды, в окне терминала запустите export QTWEBENGINE_DISABLE_SANDBOX=1. Чтобы подтвердить, что переменная среды задана, запустите printenv | grep QTWEBENGINE_DISABLE_SANDBOX и посмотрите, что возвращено QTWEBENGINE_DISABLE_SANDBOX=1.

Настройка и расширение функций приложений

Мое существующее приложение Quick Report не запускается, при этом отображается ошибка Невозможно назначить для несуществующего свойства onComposeError.

Начиная с AppStudio 4.3, изменилась сигнализация ошибки составителя электронной почты.

Ошибку можно решить, если открыть приложение в Qt Creator, перейти к файлу LandingPage.qml и изменить onComposeError на onErrorChanged (примерно в строке 655).

Я не могу идентифицировать слой сцены в приложении шаблона 3D Scene Viewer.

Это известная ошибка, которая будет исправлена в будущих версиях.

Мои запросы SQL не работают, сообщая, что таблица базы данных заблокирована или соединение все еще используется.

Это две отдельные ошибки, возникающие при запуске второго запроса с использованием компонента AppFramework.SQLQuery до завершения первого запроса. Этих ошибок можно избежать, если использовать метод finish, чтобы сообщить приложению, что любые оставшиеся результаты первого запроса не требуются, или обеспечив запрос всех результатов с помощью итеративных вызовов метода next.

AppFramework.SecureStorage и методы value и setValueвозвращают в моем приложении на macOS следующую ошибку: Введенное вами имя пользователя или кодовая фраза неверны.

Приложение, созданное для macOS, использует SecureStorage, и модули ArcGIS Runtime должны быть подписаны, чтобы получить доступ к системной связке ключей. Подробнее см. раздел Вход в ваше macOSприложение

Мое приложение ведет себя не так, как ожидается, при использовании клавиатуры SwiftKey на Android.

Это известная ошибка Qt, которая будет исправлена в будущих версиях. Если в вашем приложении используется интеллектуальный ввод текста, использование клавиатуры SwiftKey может привести к неправильному отображению вводимых данных и вычислений. Клавиатуру SwiftKey невозможно повторно открыть, если используется клавиша Enter.

При передаче недопустимого apiKey картам типа TiledLayer или VectorTiledLayer, карта будет отображена, но с непредсказуемым стилем.

Карты TiledLayer или VectorTiledLayer будут отображаться при указании недопустимого apiKey, однако будет использоваться стиль по умолчанию. Для пользовательских стилей требуется корректный apiKey.

Создание файлов установки

Я не могу создать свое приложение для iOS без сертификата.

В отличие от других платформ, перед построением приложения iOS, на iOS необходим заверенный сертификат на производство, даже в целях тестирования. При попытке построения без него возникает ошибка. Информацию о получении и поддержке этих сертификатов см. в разделе Maintain signing assets в руководстве Apple's App Distribution Guide. Вам также необходимо назначить приложению соответствующий ID бандла, это можно сделать, открыв окно Настройки на боковой панели AppStudio и выполнив поиск вкладки iOS под заголовком Платформы. Подробнее см. раздел Вход в ваше iOSприложение

Получена ошибка построения Профиль авторизации "ABC" имеет ID приложения "com.abc.xyz", которое не совпадает с ID бандла "com.xyz.abc".

Эта ошибка означает, что не задан ID бандла iOS. Перейдите к Настройки > Платформа > iOS > ID бандла и убедитесь, что ID совпадает с указанным в профиле авторизации.

Получена ошибка построения Профиль авторизации не является профилем "ABC".

Эта ошибка означает, что выбранный метод распространения не соответствует типу профиля авторизации, указанному при запросе билда. Перейдите к Настройки > Платформа > iOS > Метод распространения и убедитесь, что метод распространения соответствует типу профиля авторизации, указанному при запросе билда.

Получена ошибка построения Ошибка подписи кода: Профиль авторизации "ABC" не содержит сертификат подписи "DEF".

Эта ошибка означает, что профиль авторизации, использованный для построения приложения не содержит нужной информации. Убедитесь, что файл p12, использованный для построения приложения, содержит и сертификат и личный ключ.

Получена ошибка построения Ошибка подписи кода: Профиль авторизации "ABC" не поддерживает функцию Associated Domains.

Эта ошибка означает, что приложение задает ссылку на ваше приложение для использования другим приложением, что не зарегистрировано в developers.apple.com. Более подробно см. в документации Apple Allowing Apps and Websites to Link to Your Content.

Получена ошибка построения Недопустимые параметры подписи Android.

Эта ошибка может быть получена, если вы пытаетесь создать приложение на другом компьютере, чем в первый раз. Файл KeyStore не сохраняется в элементе приложения, в элементе находится только ссылка на него. Чтобы проверить, что у вас есть доступ к файлу KeyStore, перейдите к Настройки > Платформа > Android и убедитесь, что путь к файлу KeyStore и псевдоним Key верны.

Подписка магазина

Запрет магазина из-за Ошибка ITM-90717: недопустимый значок магазина приложений.

Эта ошибка вызвана либо наличием прозрачных пикселей, либо альфа-канала в значке приложения. Удалите эти элементы из значка, перестройте файлы установки приложения и повторите размещение. Это ограничение применимо только к iOS App Store. Прозрачность в значке разрешена на других платформах. Можно задать различные значки приложения для разных платформ, отредактировав файл appinfo.json вашего проекта. В AppStudio выберите свое приложение в галерее и щелкните Редактировать. Выберите файл appinfo.json и отредактируйте элемент resources, чтобы включить в него свойства appIcon для каждой платформы, как в следующем примере:

"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"

},

Указаны недопустимый ID бандла (iOS) или Имя пакета (Android).

При создании записи магазина приложений, необходимо задать уникальный идентификатор приложения. Этот идентификатор обычно использует формат com.yourdomain.appname. Убедитесь, что вы ввели тот же идентификатор в Настройки > Платформа > Android или Настройки > Платформа > iOS. После ввода уникального идентификатора, щелкните Применить и загрузите приложение в организацию ArcGIS перед запросом построения.

Предупреждение об неоптимизированном APK.

Когда вы загружаете APK на Google Play, вы можете увидеть сообщение, что APK не оптимизирован и рекомендацию исползовать App Bundles. Это предупреждение, оно не мешает продолжить процесс публикации приложения на Google Play. AppStudio в будущем будет поддерживать App Bundles.