已知问题

下文描述了使用 AppStudio 时可能遇到的行为,这些行为为您提供您可以执行的已知解决方法或措施来纠正问题。

要报告或了解有关 AppStudio 中的漏洞,请访问支持

安装和设置

配置并扩展应用程序

创建安装文件

Store 提交

安装和设置

双击 Linux .run 文件时,Ubuntu Software Center 加载并出现错误消息。 这是为什么?

从 Internet 下载 .run 文件时,其执行权限被禁用。 要启用执行权限,请执行以下操作:

  1. 右键单击 .run 文件。
  2. 转到权限选项卡。
  3. 选中允许按程序执行文件复选框。
  4. 单击关闭

现在当您双击 .run 文件时,安装向导将会启动。

ArcGIS AppStudio 无法启动,并出现一条错误消息,指出 api-ms-win-crt-runtime-l1-1-0.dll 文件缺失。

此消息表明运行 AppStudio 所需的 Windows 组件 Universal C Runtime 缺失。 这些组件分布在 Windows 更新中,该更新可在 Windows 支持中心中下载。

ArcGIS AppStudio 在我的工作场所无法运行,但在场外可正常运行。

最可能的原因是您的工作空间通过基于规则的自动配置脚本控制互联网的访问。 AppStudio 当前检测不到这种代理,也就是说应用程序连接到 ArcGIS Online 的能力可能会受到影响。 在这种情况下,您可能需要关闭自动配置脚本并通过地址和端口组合手动配置代理服务器。

Windows 中,可以通过 Internet 选项中的局域网 (LAN) 设置控制此过程。

AppStudio 控制台未在接收控制台日志。

这可能是因为控制台工具显示的用户数据报协议 (UDP) 消息被防火墙过滤或阻止。 这可以通过关闭防火墙或在控制台工具使用期间允许接收 UDP 数据包例外来解决。 对于更可信的网络,您也可以重置防火墙,以便在遇到问题时允许接收 UDP 数据包。

我的 ArcGIS Runtime 应用程序在 Windows 中崩溃。

这可能是因为 Windows 计算机中的显卡驱动程序无法满足最低要求。 运行 ArcGIS Runtime 应用程序时,OpenGL 2.1 是 2D 地图视图的最低要求,而 3.2 是 3D 场景视图的最低要求。 建议使用最新的可用驱动程序。

我无法创建 Android 虚拟设备来测试我的应用程序。

如果您使用虚拟机在多个平台上测试您的应用程序,则您无法在这些平台上运行 Android 仿真器。 这是因为 Android 仿真器使用了硬件加速执行管理器 (HAXM),这是一种不支持嵌套虚拟机的可视化引擎。 您只能在物理计算机上运行 Android 仿真器。

我已安装 Android Studio,但是 AppStudio 无法识别它。

AppStudio 最初在 Android Studio 的默认位置查找文件。 如果您在 Qt Creator 中配置了 Android SDK 位置,AppStudio 将改为使用此位置。

每个平台中 SDK 的默认路径如下所示:

  • WindowsUsers/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 或您构建的应用程序时,它将使用下载的语音。

无法在 Ubuntu 上启动 AppStudio 5.0 应用程序。

使用 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 方法请求所有结果来避免这些错误。

macOS 中,AppFramework.SecureStorage valuesetValue 方法在我的应用程序中返回以下错误:您所输入的用户名或密码不正确

macOS 构建的使用 SecureStorage 和 ArcGIS Runtime 模块的应用程序必须经过签名才能获得对系统密钥链的访问权限。 有关详细信息,请参阅macOS 应用程序签名

Android 上使用 SwiftKey 键盘时我的应用程序行为与预期不符。

这是一个已知 Qt 问题,计划在未来版本中修复该问题。 如果将预测文本用于应用程序,使用 SwiftKey 键盘可能导致输入和计算显示错误。 如果使用了 Enter 键,可能无法重新打开 SwiftKey 键盘。

将值为 false 的 apiKey 传递给 TiledLayer 或 VectorTiledLayer 类型的地图时,该地图将会以一种非预期的样式显示出来。

如果提供了值为 false 的 apiKey,则尽管 TiledLayer 或 VectorTiledLayer 地图仍将显示,但仅会显示默认样式。 自定义样式需要正确的 apiKey。

创建安装文件

我无法在不提供证书的情况下为 iOS 构建应用程序。

与其他平台不同的是,需要签名的生产证书才能构建 iOS 应用程序,即使出于测试目的也是如此。 如果尝试在没有证书的情况下构建 iOS 应用程序,则将会出现错误。 有关获取及维护这些证书的信息,请参阅 Apple 应用程序分发指南中的维护签名资产。 您还需要为应用程序指定一个相应的包 ID,方法为在 AppStudio 侧面板中打开设置窗口,然后浏览至 iOS 选项卡的平台标题。 有关详细信息,请参阅iOS 应用程序签名

收到构建错误消息配置文件 "ABC" 具有应用程序 ID "com.abc.xyz",这与包 ID "com.xyz.abc" 不一致

此错误表示尚未设置 iOS 包 ID。 转至设置 > 平台 > iOS > 包 ID,并确保包 ID 与配置文件中的一致。

收到构建错误消息配置文件不是 "ABC" 配置文件

此错误表示所选分发方法与随构建请求提供的配置文件类型不匹配。 转至设置 > 平台 > iOS > 分发方法,并确保该分发方法与将用于构建请求的配置文件类型匹配。

收到构建错误消息代码签名错误:配置文件 "ABC" 不包含签名证书 "DEF"

此错误表示用于构建应用程序的配置文件缺少信息。 确保用于构建应用程序的 p12 文件包含证书和私钥。

收到构建错误消息代码签名错误:配置文件 "ABC" 不支持“关联属性域”功能

此错误表示您的应用程序定义尚未在 developers.apple.com 中注册的应用程序的链接,以供其他应用程序使用。 有关详细信息,请参阅关于允许应用程序和网站链接到您的内容的 Apple 文档。

收到构建错误消息 Android 签名参数无效

如果要尝试与先前尝试时使用的计算机不同的计算机上构建应用程序,可能收到此错误。 KeyStore 文件未保存在应用程序项目中,仅在项目中保存对其位置的引用。 要验证您是否有权访问正确的 KeyStore 文件,请转至设置 > 平台 > Android,然后确保 KeyStore 文件路径和密钥别名正确。

Store 提交

错误 ITM-90717:App Store 图标无效遭到 Store 拒绝。

当应用程序图标中存在透明像素或 alpha 通道时,会出现该错误。 将这些内容从图标中移除,重新构建应用程序安装文件,然后重新提交到 Store。 此限制仅适用于 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) 错误。

创建 App Store 条目时,必须定义应用程序的唯一标识符。通常,此标识符的格式为 com.yourdomain.appname。 确保在设置 > 平台 > Android设置 > 平台 > iOS 中输入相同的标识符。 在输入唯一标识符后,确保在请求构建之前,单击应用并将应用程序上传到 ArcGIS 组织。

未优化 APK 警告消息。

将 APK 上传到 Google Play 时,您可能收到一条警告消息(表示 APK 为未优化 APK)并建议使用应用程序包。 这是一条警告,不会阻止您继续执行将应用程序发布到 Google Play 的过程。 未来,AppStudio 将支持应用程序包。