Android和Prolog

use*_*885 7 android prolog

我在Prolog中建立了一个专家系统.有没有办法可以将Prolog代码合并到我的Android应用程序中,以便应用程序接受参数将它们传递给Prolog专家系统,专家系统会将答案返回给Android应用程序?

Pet*_*ego 8

尝试使用任何基于JVM的prolog编译器编译(并正确运行)prolog代码:http://www.is-research.de/info/vmlanguages/tag/prolog/

如果确实如此,那么你很幸运.它很可能会在Android上运行.


Tra*_*ers 7

普通Java平台和Android平台之间存在以下差异:

  • 虚拟机:虽然Dalvik机器可以执行Java 1.5,但它不支持通常在Java标准版下可用的所有库.例如,我们发现Dalvik没有javax.management.*.另一方面,Dalvik有一些标准版Java没有的东西,比如android.os.SystemClock.

  • 用户界面: Android平台附带自己的小部件集和窗口管理器.它还有一个包部署系统.另一方面,标准版Java提供了Swing小部件集,即AWT小部件集.还有SWT小部件设置为可用的第三方产品.标准版混合到OS窗口管理器中,不需要包部署.

对于Jekejeke Prolog,我们最近在两个层面上完成了我们的开发分支.从0.9.3版本开始,解释器可用于标准版Java版本和Android版本.从版本0.9.5开始,运行时库也有一个控制台,可以从以下位置直接安装:

Google Play
Amazone Appstore
三星应用

解释器有一个编程接口.您可以将它与您的应用程序紧密集成.您甚至可以将应用程序与intepreter捆绑在一起,因为它具有分发许可证.支持的Prolog语言与标准版Java和Android完全相同.两个平台也支持多线程.您可以从Jekejeke网站下载可嵌入的.zip以供您自己开发.

最好的祝福


Ped*_*iro 4

我很久以前就做过类似的事情。

它与 Android 无关,但与 Android 无关。

我使用套接字与 Prolog 进行通信。Prolog 将读取输入,完成其工作并返回答案。另一个应用程序(根据我的经验)使用 C++ 和OpenGL,并且运行得很好。

在 Android 中使用套接字不应该成为您的问题。不幸的是,这是很多年前的事了,我不相信我有 Prolog 的源代码来向您展示如何做到这一点,但一个选择是:使用套接字:)

祝你好运!(我会尝试找到该源代码,但我不希望找到它!)