如何使用matlabcontol.jar从java(for android)运行matlab脚本

use*_*423 5 java matlab android

我试图从使用Eclipse开发的java android应用程序中调用用户定义的matlab函数(.m文件)matlabcontrol.jar.

实际上,当我在java项目中使用它时,它运行良好.但我想知道在开发android应用程序时是否可以使用它.

问题是当我matlabcontrol.jar用于java项目时,它会弹出并自动运行matlab应用程序(如R2009b matlab),即使我不想使用它.然后在matlab控制台上运行并打印结果.

然后,我认为,如果没有matlab在他们的计算机或智能手机中安装应用程序的人不能使用包含matlab代码的应用程序.

所以,我只想matlab在java程序(用于android)上运行代码,而不是使用matlab应用程序.请给我选择或替代方法吗?

请帮忙.谢谢.

Sam*_*rts 4

matlabcontrol只是为您提供了一种从 Java 调用 MATLAB 运行副本的方法。如果您有一些 MATLAB 代码想要在 Android 设备上运行,那么这对您不起作用,因为没有可以在 Android 上运行的 MATLAB 版本。

如果您希望将 MATLAB 代码作为 Android 应用程序的一部分运行,那么您有两个真正的选择:

i) 使用 MATLAB Coder 将 MATLAB 算法转换为 C 代码,该代码可以编译、从 Java 调用,并包含在您的应用程序中以在设备上运行。您需要确保您的 MATLAB 算法属于 MATLAB Coder 支持的 MATLAB 语言子集,但这通常不是一个大问题。MathWorks 有一个录制的网络研讨会,其中包含如何执行此操作的示例(iPhone 上是 Objective C,而不是 Android 上的 Java,但原理是相同的)。如果您想查找的话,它的名称类似于“MATLAB to iPhone made easy”。这是它的链接

ii) 使用 MATLAB Builder NE for .NET 或 MATLAB Builder JA for Java 将 MATLAB 算法部署为 Web 服务,并让您的 Android 应用程序调用该 Web 服务。

PS MATLAB Mobile 在这里不是一个相关选项 - 它是一个用于连接到您的计算机或云中的 MATLAB 会话并以交互方式运行 MATLAB 代码的工具。它不提供在设备本身上运行 MATLAB 代码的方法。