如何从Wikitude世界中调用PhoneGap API

时间:2013-05-08 17:01:19

标签: javascript cordova wikitude

在我的PhoneGap + Wikitude应用程序中,我有PhoneGap的标准index.html和index.js文件,这些文件启动了我的Wikitude world myWorld.html。

在myWorld.html中,我需要fileSystem和FileTransfer。我已经在myWorld.html中正确引用了PhoneGap JavaScript文件。

<script type="text/javascript" src="../../../www/cordova-2.5.0.js"></script> enter image description here

我正在尝试这两个电话而没有任何运气:

window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, fsSuccess, fsFail);

var ft = new FileTransfer();

我知道WikitudePlugin.callJavascript()(请参阅此question)在PhoneGap中调用Wikitude世界中的Javascript,但是:

  • 我了解使用callJavascript(),我只能将文字参数传递给我的Wikitude世界。
  • 肯定有一种方法可以在Wikitude世界HTML中调用PhoneGap功能,因为cordova.js只是一个JavaScript文件?

如何在Wikitude世界中获取对fileSystem和FileTransfer对象的引用?

1 个答案:

答案 0 :(得分:1)

不幸的是,PhoneGap不仅仅是一个JS文件,并且使用本机平台功能来实现JS功能集。通常将phonegap插件简化为非常简单的操作,例如发送SMS,例如 Wikitude插件使用传感器甚至分析cam-frames来应用ImageRecognition算法。

虽然Wikitude的ARchitect技术也使用JS / HTML,但这并不意味着你可以轻松地将它们结合起来。 AR-View在完全不同的环境中运行,并且是在phoneGap的主要活动之上的视图。 在cordova和Wikitude之间交换数据的唯一方法是使用“document.location = architectsdk:// ...”和architectView.callJavascript。

我建议您处理Cordova环境中的任何文件读数,并使用callJavaScript(EgAnyJSONObject)将所有数据传递给Wikitude的SDK。

希望有所帮助。

亲切的问候, 安德烈亚斯

相关问题