如何把Sencha Touch 2.0框架打包成iOS本地应用

移动开发
本文由移动Web开发社区翻译,讲述了如何把Sencha Touch 2.0框架打包成iOS本地应用得过程。

准备工作

软件

  • Mac OS X 10.6+
  • Xcode (iOS 模拟器所需要的)

Apple iOS provisioning 

  • Complete iOS provisioning on the Apple iOS provisioning portal and have the certificates and devices setup through the provisioning portal and Xcode.
  • Create an App ID and finish provisioning your application. Please refer to the How-To section in the Apple iOS provisioning portal for help. 

  注意: 在打包iOS应用程序的过程中,需要用到App ID和App name。 

在Mac系统上打包iOS系统应用程序的步骤 

  1. 前期准备:进入 Apple iOS provisioning portal完成开发者授权。
  2. 安装打包程序部分: Sencha SDK Tools 2.0
  3. 创建一个配置文件用于打包IOS应用.
  4. 运行 packager 打包工具,创建一个App.

Step 1:在Apple iOS provisioning portal完成iOS程序开发者授权

可查看开发者授权系统Apple iOS provisioning portal 来获得开发和发布应用程序所需要的certificate和profile。

Step 2: 安装打包程序 

运行Sencha SDK 安装程序: SenchaSDKTools (SenchaSDKTools-2.0.0-Beta)

包含有打包选项的的sencha command会被安装到指定的目录中(默认: Applications/SenchaSDKTools-2.0.0-Beta/command). 

Step 3: 创建一个配置文件供打包iOS程序时使用.

配置文件具有如下的格式: 


    "applicationName": "<AppName>", 
    "applicationId": "<AppID>", 
    "outputPath": "<AppPackageOutputPath>", 
    "iconName": "<AppIconName>", 
    "versionString": "<AppVersion>", 
    "webAppPath": "<PathToWebApp>", 
    "configuration": "<Release | Debug>", 
    "platform": "<iOSSimulator | iOS>", 
    "deviceType": "<iPhone | iPad | Universal>", 
    "certificateAlias": "<(Optional)CertificateAlias>", 
    "orientations": [ 
        "portrait", 
        "landscapeLeft", 
        "landscapeRight", 
        "portraitUpsideDown" 
    ] 

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.

注意:在Mac系统Terminal上运行如下的命令行可以创建配置文件模板: 

sencha package generate <configTemplate.json> 
  • 1.

<configTemplate.json> 是配置文件的名字. 注意: <configTemplate.json> 的路径和文件名中不能包含空格。

下面参数用于iOS打包

"applicationName":"<AppName>
  • 1.

AppName 以及AppID都可以在 iOS provisioning portal 中的App IDs部分中找到 

    
AppID  

例如上方所示:

  • AppName 为 “Sencha Touch 2 Packaging”
  • AppID 为 “com.Sencha.Touch2Packaging”

注意:  App ID 需要与你在 Xcode的Identifier field输入的相同 。

你打包出文件的输出位置,<application.app>。

"iconName":"<AppIconName>
  • 1.

 你的应用程序所需要的图标文件。 

注意: Retina图标需要在文件名的末尾用@2x标记。例如icon.png (普通的图标文件),icon@2x.png (retina图标文件). 如果带有 @2x.png的retina图标存在,打包程序将包含retina图标. 
注意: 请参考 iOS icon guideline 来进一步了解图标文件类型。 

"versionString":"<AppVersion>", 
  • 1.

application的版本.

"webAppPath":"<PathToWebApp>
  • 1.

 用来打包的web application路径。

"configuration":"<Release | Debug>
  • 1.

指定创建出程序的类型: Release or Debug.

"platform":"<Simulator | iOS>
  • 1.

 制定创建出程序的运行方式 iOS 模拟器还是iOS设备. 

 注意: the iOS simulator cannot run a signed build. A signed build can only be run on the device. 

"deviceType":"<iPhone | iPad | Universal>
  • 1.

指定设备类型.可选项: - iPhone:用于 iPhone 设备 – iPad:用于iPad 设备 – Universal:可用于iphone和iPad二者。

"certificateAlias":"<(Optional)CertificateAlias>
  • 1.

 这是一个非必选项. 你可以指定一个Certificate Alias来给你的app命名。 

 注意: 如果忽略此选项,默认的certificate将会是你在iOS Provisioning Portal中建立的那一个。 

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

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.

这是一个可选的配置项. 你可以给app指定方向. 可选项包括: “portrait”, “landscapeLeft”, “landscapeRight” and “portraitUpsideDown”

注意: 如果忽略此选项,默认将包括四个方向。

Step 4: 运行packager来打包获得一个程序

Sample debug configuration file   
 

 
    "applicationName":"Sencha Touch 2 Packaging", 
 
    "applicationId":"com.sencha.touch2packaing", 
 
    "iconName":"icon.png", 
 
    "versionString":"1.0", 
 
    "outputPath":"~/Desktop/STBuild-iOS", 
 
    "webAppPath":"~/Desktop/www/", 
 
    "configuration":"Debug", 
 
    "platform":"iOSSimulator", 
 
    "deviceType":"iPhone", 
 
    "orientations": [ 
 
        "portrait", 
 
        "landscapeLeft", 
 
        "landscapeRight", 
 
        "portraitUpsideDown" 
 
    ] 
 

Sample release configuration file  
 

    "applicationName":"Sencha Touch 2 Packaging", 
    "applicationId":"com.sencha.touch2packaing", 
    "iconName":"icon.png", 
    "versionString":"1.0", 
    "outputPath":"~/Desktop/STBuild-iOS", 
    "webAppPath":"~/Desktop/www/", 
    "configuration":"Release", 
    "platform":"iOS", 
    "deviceType":"iPhone", 
    "orientations": [ 
        "portrait", 
        "landscapeLeft", 
        "landscapeRight", 
        "portraitUpsideDown" 
    ] 

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.

打包出一个在iOS 模拟器运行的app

准备工作: 在配置文件中设定Platform 和Configuration参数

例如:

"platform":"iOSSimulator" 
"configuration":"Debug" 
  • 1.
  • 2.

注意: 如果platform,configuration这两个选项没有提供 iOS将不能正常运行。

在终端运行以下命令,可以打包并在iOS上运行一个debug或unsigned的app。 

sencha package run <configFile.json> 
  • 1.

顺利执行完此命令之后,iOS模拟器将会运行app

注意: “deviceType” 选项将引导启动合适的模拟器: iPhone  iPad. 

打包出一个在 iOS 设备上运行的app

在终端运行以下命令,打包出一个在iOS设备上运行的程序

sencha package <configFile.json> 
  • 1.

注意:  <AppName.app> 将会输出在指定的位置,这是一个你可以在iOS设备上运行的程序。

原文链接: http://html5mobi.gotoip1.com/discussion/97/sencha-touch-2-sencha-touch-2-ios

责任编辑:佚名 来源: 移动Web开发社区
相关推荐

2011-09-02 15:18:49

Sencha Touc

2011-07-25 15:55:21

Sencha ToucHtml 5

2011-10-26 10:21:40

Sencha Touc组件

2011-10-26 10:43:19

Sencha Touc

2011-09-05 10:27:02

Sencha Touc手机应用Android

2011-10-26 10:32:05

Sencha Touc数据视图

2011-09-30 14:15:10

Sencha ToucSencha Touc

2011-09-02 15:58:38

Sencha Touc布局

2011-09-02 15:42:55

Sencha Touc布局

2012-01-10 13:21:33

Sencha Touc使用data包

2011-09-05 11:23:26

EclipseSencha Touc框架

2011-10-26 10:12:53

Sencha Touc布局

2011-10-18 09:49:40

新特征Sencha Touc

2011-09-05 13:45:25

jQuery MobiSencha Touc移动Web UI框架

2011-09-05 11:27:17

Sencha Touc框架HTML5

2011-09-02 16:08:09

Sencha ToucAPI文档

2011-07-26 09:41:50

Sencha Touc特性HTML 5

2010-11-22 10:31:17

Sencha touc

2011-12-20 15:59:28

2011-09-02 16:42:51

Sencha ToucWeb应用
点赞
收藏

51CTO技术栈公众号