Sencha Touch 2 打包成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程序时使用.

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{
     "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"
     ]
}

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

1
sencha package generate < configTemplate.json >

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

下面参数用于IOS打包 
  
1
"applicationName":"< AppName >"

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

例如上方所示:


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


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

1
2
3
"applicationId" : "<AppID>"
 
"outputPath" : "<AppPackageOutputPath>"

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

1
"iconName" : "<AppIconName>"

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

1
"versionString" : "<AppVersion>" ,

application的版本. 

1
"webAppPath" : "<PathToWebApp>"

用来打包的web application路径。 

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

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

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

制定创建出程序的运行方式 iOS 模拟器还是iOS设备. 
注意: the iOS simulator cannot run a signed build. A signed build can only be run on the device. 

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

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

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

这是一个非必选项. 你可以指定一个Certificate Alias来给你的app命名。 
注意: 如果忽略此选项,默认的certificate将会是你在iOS Provisioning Portal中建立的那一个。 

1
2
3
4
5
6
"orientations" : [
     "portrait" ,
     "landscapeLeft" ,
     "landscapeRight" ,
     "portraitUpsideDown"
]

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

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

Sample debug configuration file  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
{
     "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 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
{
     "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"
     ]
}


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


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

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

例如: 

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

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

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

1
sencha package run <configFile.json>

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

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

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

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

1
sencha package <configFile.json>

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

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值