繁体   English   中英

将本机代码添加到现有的Worklight混合应用程序

[英]Adding native code to an existing Worklight hybrid app

我有一个在Android上运行的worklight混合应用程序,我想添加一些功能以调用当前未通过worklight或cordova提供的本机android库。 我的理解是,我需要创建一个cordova插件来执行此操作。 鉴于入门教程中介绍的步骤,创建cordova插件似乎非常简单。

我遇到的一个麻烦就是我去创建Java类来实现插件。 该教程说“开始为插件创建Java类”……但是它并没有真正说出在何处创建它。 在Worklight Studio中,每当我要创建一个新的Java类(右键单击worklight项目>“新建”>“类”)时,它都想在Project / server / java目录中创建它。

查看本教程的示例代码,看起来我应该能够在Project / Apps / name / android / nativeResources / src目录中创建一个新类,因为这是创建示例类的地方,但是右键单击任何这些目录没有列出“ Java类”作为选项(除非转到“其他”并在那里进行选择)。 另外,在nativeResources目录下没有“ src”目录,根据我的经验,该目录通常是根据需要由eclipse创建的。

我还尝试创建一个“ Native API”子项目,以查看是否会生成所需的目录,但是它没有,并且似乎与我想要实现的目标无关。

因此,最终的问题是我应该手动在nativeResources文件夹下创建目录并添加我的新类(即使eclipse / worklight studio似乎无法将其识别为有效位置)还是我完全丢失了某些东西?

NativeAPI选项适用于本机应用程序开发。 由于这不是您要查找的内容,因此无法使用。

为了方便起见,Worklight提供了nativeResources文件夹(您可以在Stack Overflow中搜索“ [worklight] nativeResources”,您会发现大量阅读材料)。 使用此文件夹,您可以在实际本机文件夹中按其位置存储各种文件,并且在构建时,Worklight Builder将用您放置在nativeResources文件夹中的任何文件替换本机文件夹的内容。

因为它是“只是一个文件夹”,所以右键单击它不会做太多事情。

就像在任何Android应用程序中一样(不是Worklight唯一的),将类文件添加到的位置在native \\ src文件夹(native \\ src \\ com \\ app_name)中。 本机文件夹表示生成的Android项目。

因此,您可以在本机文件夹下或在生成的Android项目中创建此文件。
如果您在生成的Android文件夹中创建它,则需要将其复制回本机文件夹中的相同位置,以便Worklight在下次运行Build时将其添加到生成的Android项目中(运行方式>在Worklight Development Server上运行)。

尝试了几件事之后,看起来以下过程起作用了:

  1. 右键单击该项目以添加您的本机类。
  2. 选择“新建>其他>类”
  3. 在出现的对话框中,选择“浏览”,然后展开对话框中列出的android应用“ Generated Folder”(这是我上面缺少的部分)。 在该文件夹下有一个“ src”目录可供选择。
  4. 根据教程填写对话框的其余部分,您现在应该看到添加了可用于cordova插件的文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM