0

我们正在尝试使用新的 CLI 功能构建我们的工作灯 apk。出于向后兼容的原因,我们有一个 android sdk 文件夹结构,其 API 级别最高为 18。在另一个位置,我们的 API 级别最高为 21。

当我们运行 CLI 实用程序时,我们收到以下错误:警告:FWLST1119W:Android 构建将失败,因为 Worklight Studio 不支持用于编译项目的 API 级别。

错误继续告诉我们使用版本 19,因为这是最新版本等...

该 apk 将从 Eclipse 构建而不会出现问题 - 我们已将 eclipse 配置为指向较新的 android sdk 安装文件夹。

所以,我的问题是,我们如何告诉 CLI 使用哪个 android 安装文件夹?

提前致谢。

4

1 回答 1

0

忽略该消息,Worklight CLI 不会为您构建 Android APK,因此不需要指定 JDK 和 Android SDK。Worklight CLI 需要一个 JDK 来编译服务器端代码(如自定义 java 代码)并构建 war 文件。

Worklight CLI 在“apps/myhybridapp/android/native/”位置为混合应用程序创建一个 Android 项目,该目录包含一个 AndroidManifest.xml

要构建 Android 应用程序包 (apk),您需要使用 android 命令行。

例如,要更新要由 ant 构建的项目,请运行以下命令:

$ /Users/mfpuser/Library/Android/sdk/tools/android update project -p android/native -t android-19
Updated project.properties
Updated local.properties
No project name specified, using Activity name 'myapp'.
If you wish to change it, edit the first line of build.xml.
Added file android/native/build.xml
Added file android/native/proguard-project.txt

此命令添加了以下文件:

$ git status
    android/native/build.xml
    android/native/local.properties
    android/native/proguard-project.txt

build.xml 是一个 ant 构建文件。

如果您打开 build.xml,您会注意到有两种方法可以指定 Android SDK 目录。按优先顺序: 1. local.properties 2. 环境变量 ANDROID_HOME

当我运行命令时,local.propeties 具有以下内容:

sdk.dir=/Users/mfpuser/Library/Android/sdk

您可以编辑 local.properties 为 Android SDK 指定不同的位置

对于 Android API 级别

android 更新项目还使用命令行中指定的 android 目标更新了文件 project.properties。

这是project.properties的内容:

# Project target.
target=android-19

您还可以编辑此文件以更改目标 api。

现在您已设置好运行 ant 进行构建,确保将 JAVA_HOME 设置为 Oracle JDK 1.7,这将需要它来构建 Android 应用程序。

像这样:

$ echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk1.7.0_72.jdk/Contents/Home

现在您可以运行 ant 例如进行调试构建

$ ant -f android/native/build.xml debug

但是同样有很多方法可以构建 Android apk 我只是描述了一种,您应该查看Android 文档以获取更多信息,包括基于 gradle 的新构建系统。

我希望这有帮助。

于 2014-12-05T23:16:05.840 回答