主要内容

Web App 限制和不支持的功能

将 MATLAB® App 打包为 Web App 时,请考虑以下功能限制。使用某些函数可能会导致错误或意外行为。

行为差异

由于部署的 Web App 托管在服务器上,因此使用系统信息的函数只能访问服务器端信息,而不能访问客户端信息。此外,Web App 显示在浏览器窗口中,而不是显示在单独的图窗窗口中。因此,某些函数和属性在部署的 Web App 中的行为与在本地系统中的行为不同。下表列出了与 App 编译工作流最相关的一些差异。

类别限制
图形根对象属性

groot 对象的 MonitorPositionsPointerLocationScreenDepthScreenPixelsPerInchScreenSize 属性包含服务器端信息,不包含客户端信息。

图窗属性

CloseRequestFcnVisibleWindowStateWindowStyle 属性在 Web App 中无效用。

您可以使用 PositionInnerPosition 属性指定初始图窗大小,但是,在 App 正在运行时通过设置这些属性来以编程方式调整图窗大小可能会导致意外行为。

文件对话框

虽然您可以在部署的 Web App 中使用 uigetfileuiputfile 从本地系统上传和下载文件,但存在一些限制:

  • 当外部应用程序正在写入文件时,您无法下载文件。

  • 您无法指定默认路径或文件名。

系统命令返回系统信息的命令(例如 computerispcisunixismaclistfonts)会返回服务器端信息,但不返回客户端信息。
音频和视频功能连接到硬件(例如 webcam)的函数需要在服务器上启用 SSL 才能获得安全的 URL。

不支持的功能

某些功能在部署的 Web App 中不受支持。下表列出了与 App 编译工作流最相关的不受支持的功能。

类别不支持
多窗口 App

不支持对 figureuifigure 的多个调用。

此外,不支持创建显示为单独窗口的对话框的函数。这些函数包括 dialogmsgboxerrordlgwarndlghelpdlglistdlgquestdlginputdlguisetcoloruisetfont。不过,支持在图窗窗口中创建对话框的函数,例如 uialert (MATLAB)uiconfirm (MATLAB)uiprogressdlg (MATLAB)

文件对话框不支持在客户端上使用 uigetdir 打开文件夹选择对话框。
保存和打印

不支持 printprintpreviewexportapp 函数。

绘图函数不支持 wordcloud 函数。
坐标区工具栏交互

在 R2023b 之前的版本中: 不支持数据刷亮。

复制和粘贴不支持使用 clipboard 函数将文本复制和粘贴到系统剪贴板,或从其中复制和粘贴文本。
工程特征不支持 matlab.project.createProjectmatlab.project.loadProject 等工程特征。
OLE 自动化不支持 actxserver 函数。

这些不受支持的功能是除了 App 设计工具图形限制之外的额外限制。有关详细信息,请参阅在 App 设计工具中显示图形 (MATLAB)

另请参阅

主题