如何制作用于sencha触摸应用的Apk

时间:2013-12-27 09:47:11

标签: javascript jquery css html5 sencha-touch

我是Sencha Touch的新用户。我已经安装了所有必需的工具和sdk,并设置了通过cmd创建项目期间创建的演示示例。我想为我刚刚创建的Web应用程序生成APK文件,但我不知道如何开始。怎么办呢?

谢谢

1 个答案:

答案 0 :(得分:2)

第1步:Android认证生成 Android SDK工具中包含的Android Keytool是创建用于签署Android应用程序的证书的一种方式。下面是生成私钥的Keytool命令的示例:

$ keytool -genkey -v -keystore my-release-key.keystore -alias alias_name
    -keyalg RSA -keysize 2048 -validity 10000

第2步:安装Sencha SDK工具。

  • 运行Sencha SDK安装:SenchaSDKTools (SenchaSDKTools-2.0.0-β)
  • 将安装包含package选项的sencha命令 安装期间指定的位置(默认值: 应用程序/ SenchaSDKTools-2.0.0-β/命令)。

步骤3:创建要与本机打包程序一起使用的打包配置文件。 配置文件具有以下格式:

{
    "applicationName": "<AppName>",
    "applicationId": "<AppID>",
    "outputPath": "<AppPackageOutputPath>",
    "iconName": "<AppIconName>",
    "versionString": "<AppVersion>",
    "inputPath": "<PathToWebApp>",
    "configuration": "<Release | Debug>",
    "platform": "<Android | AndroidEmulator>",
    "certificatePath": "<certificatePath>",
    "certificateAlias": "<certificateAlias>",
    "sdkPath": "/android-sdk-mac_86",
    "orientations": [
        "portrait",
        "landscapeLeft",
        "landscapeRight",
        "portraitUpsideDown"
    ],
    "deviceType": "<Not applicable for Android>"
}

可以通过运行以下命令来创建配置文件模板:

sencha package generate <configTemplate.json>

是配置模板文件的名称。

注意:路径或文件名不能包含任何空格。

以下参数适用于Android软件包:

"applicationName":"<AppName>"

指定应用程序的名称(AppName)。输出文件的名称为.apk。

"applicationId":"<AppID>"

指定为应用程序指定的ID。建议您为应用程序使用nameSpace,例如com.sencha.Touch2Package。

"outputPath":"<AppPackageOutputPath>"

指定打包应用程序的输出位置。

"iconName":"<AppIconName>"

指定要用于应用程序的启动器图标文件。有关图标文件规范的详细信息,请参阅Android Launcher图标指南。

"versionString":"<AppVersion>",

指定应用程序的版本。

"webAppPath":"<PathToWebApp>"

指定要打包的Web应用程序的路径。

"configuration":"<Release | Debug>"

从Release或Debug中指定构建类型。

"platform":"<Android | AndroidEmulator>"

指定构建是针对Android设备(Android)还是针对Android模拟器(AndroidEmulator)。

"certificatePath":"<certificatePath>",

指定用于签署应用程序的证书的特定证书位置。

"certificateAlias":"<CertificateAlias>"

指定用于签署应用程序的特定证书别名。

"orientations": ["portrait", "landscapeLeft", "landscapeRight", "portraitUpsideDown"

可选参数。指定应用程序的方向。可用选项:portrait,landscape,landscapeRight和portraitUpsideDown。如果省略,则默认为所有四种方向模式。

"deviceType"

这不适用于Android应用程序。构建Android应用程序时会忽略此配置参数。


示例调试配置文件

{
    "applicationName":"SenchaTouch2Package",
    "applicationId":"com.sencha.Touch2Package",
    "iconName":"icon.png",
    "versionString":"1.0",
    "outputPath":"~/Desktop/STBuild-Android",
    "webAppPath":"~/Desktop/www/",
    "configuration":"Debug",
    "platform":"Android",
    "deviceType":"Universal",
    "certificatePath":"~/Desktop/debug.keystore",
    "certificateAlias":"androiddebugkey",
    "sdkPath":"~/Desktop/android-sdk-mac_x86",
    "orientations": [
        "portrait",
        "landscapeLeft",
        "landscapeRight",
        "portraitUpsideDown"
    ]
}

示例发布配置文件

{
    "applicationName":"SenchaTouch2Package",
    "applicationId":"com.sencha.Touch2Package",
    "iconName":"icon.png",
    "versionString":"1.0",
    "outputPath":"~/Desktop/STBuild-Android",
    "webAppPath":"~/Desktop/www/",
    "configuration":"Release",
    "platform":"Android",
    "deviceType":"Universal",
    "certificatePath":"~/Desktop/senchatouch-key.keystore",
    "certificateAlias":"senchatouch",
    "sdkPath":"~/Desktop/android-sdk-mac_x86",
    "orientations": [
        "portrait",
        "landscapeLeft",
        "landscapeRight",
        "portraitUpsideDown"
    ]
}

第4步:运行打包程序以创建打包的.apk

打包调试应用程序并在Android模拟器上运行

先决条件:需要在配置文件中设置平台和配置设置,例如

platform: AndroidEmulator
configuration: Debug

要打包调试应用程序以在Android Emulator上运行,请执行以下操作:

启动Android模拟器并发出以下命令:

sencha package run <configFile.json>

成功执行此命令后,应用程序将在已运行的Android Emulator中启动。如果在发出命令之前未启动Android Emulator,则Android Emulator将无法自动启动。如果包成功,则可以在应用程序输出位置使用.apk,以便在Android模拟器或设备上手动测试它。

有关Android Emulator的更多信息,请参阅Android开发者指南:使用Android模拟器。

打包应用程序以进行分发 要打包已签名的应用程序以在设备上运行,请发出以下命令:

sencha package <configFile.json>

在指定的输出位置创建An。这是您可以用于发布以进行分发的应用程序。