Docs Help

术语、图标和标签

许多类都有快捷名称,用于在使用配置对象创建(实例化)类时。快捷名称被称为 alias(别名)(如果类扩展了 Ext.Component,则称为 xtype)。别名/xtype 列在适用类的类名旁边,以便快速参考。

访问级别

框架类或其成员可以指定为 private(私有)或 protected(受保护)。否则,该类/成员为 public(公共)。Publicprotectedprivate 是访问描述符,用于传达类或类成员应该如何以及何时使用。

成员类型

成员语法

下面是一个示例类成员,我们可以剖析它以显示类成员的语法(在本例中为从 Ext.button.Button 类查看的 lookupComponent 方法)。

lookupComponent ( item ) : Ext.Component
protected

当原始配置对象添加到此容器时调用,无论是在初始化 items 配置期间,还是在 添加新项目时,或者 {@link #insert 插入} 时。

此方法将传递的对象转换为实例化的子组件。

当需要对子组件创建应用特殊处理时,可以在子类中重写此方法。

参数

item :  Object

正在添加的配置对象。

返回值
Ext.Component

要添加的组件。

让我们看一下成员行的每个部分

成员标志

API 文档使用许多标志来进一步传达类成员的功能和意图。标签可以用文本标签、缩写或图标表示。

类图标

- 表示框架类

- 单例框架类。*有关更多信息,请参阅单例标志

- 组件类型框架类(Ext JS 框架中扩展 Ext.Component 的任何类)

- 表示类、成员或指南在当前查看的版本中是新的

成员图标

- 表示 config 类型的类成员

- 表示 property 类型的类成员

- 表示 method 类型的类成员

- 表示 event 类型的类成员

- 表示 theme variable 类型的类成员

- 表示 theme mixin 类型的类成员

- 表示类、成员或指南在当前查看的版本中是新的

类成员快速导航菜单

在 API 文档页面上的类名正下方是一行按钮,对应于当前类拥有的成员类型。每个按钮都显示按类型划分的成员计数(此计数会在应用过滤器时更新)。单击按钮将导航到该成员部分。将鼠标悬停在成员类型按钮上将显示一个弹出菜单,其中包含该类型的所有成员,以便快速导航。

Getter 和 Setter 方法

与类配置选项相关的 Getter 和 setter 方法将显示在 methods(方法)部分以及 API 文档和成员类型菜单的 configs(配置)部分中,就在它们所作用的配置下方。Getter 和 setter 方法文档将在配置行中找到,以便于参考。

历史记录栏

您的页面历史记录保存在本地存储中,并显示在顶部标题栏正下方(使用可用的实际空间)。默认情况下,显示的唯一搜索结果是与您当前查看的产品/版本匹配的页面。您可以通过单击历史记录栏右侧的 按钮并选择“全部”单选按钮来展开显示的内容。这将显示历史记录栏中所有产品/版本的所有最近页面。

在历史记录配置菜单中,您还将看到最近页面访问的列表。结果按“当前产品/版本”和“全部”单选按钮进行筛选。单击 按钮将清除历史记录栏以及本地存储中保存的历史记录。

如果在历史记录配置菜单中选择了“全部”,则将启用“在历史记录栏中显示产品详细信息”的复选框选项。选中后,每个历史页面的产品/版本将与历史记录栏中的页面名称一起显示。将光标悬停在历史记录栏中的页面名称上方也会以工具提示的形式显示产品/版本。

搜索和过滤器

可以使用页面顶部的搜索字段搜索 API 文档和指南。

在 API 文档页面上,还有一个过滤器输入字段,它使用过滤器字符串过滤成员行。除了按字符串过滤外,您还可以按访问级别、继承和只读来过滤类成员。这是使用页面顶部的复选框完成的。

API 类导航树底部的复选框过滤类列表以包含或排除私有类。

单击空白搜索字段将显示您最近 10 次搜索,以便快速导航。

API 文档类元数据

每个 API 文档页面(Javascript 原始类型页面除外)都有一个菜单视图,其中包含与该类相关的元数据。此元数据视图将具有以下一项或多项

展开和折叠示例和类成员

可运行的示例 (Fiddles) 默认在页面上展开。您可以使用代码块左上角的箭头单独折叠和展开示例代码块。您还可以使用页面右上角的切换按钮切换所有示例的折叠状态。切换所有状态将在页面加载之间记住。

类成员默认在页面上折叠。您可以使用成员行左侧的箭头图标或右上角的展开/折叠全部切换按钮全局展开和折叠成员。

桌面 -vs- 移动视图

在较窄的屏幕或浏览器上查看文档将导致针对较小外形尺寸优化的视图。桌面视图和“移动”视图之间的主要区别在于

查看类源代码

可以通过单击 API 文档页面顶部的类名称来查看类源代码。可以通过单击成员行右侧的“view source”(查看源代码)链接来查看类成员的源代码。

Sencha Touch 2.4


top

打包 Native iOS 应用程序

本指南逐步介绍了在运行 iOS 的设备上创建和安装本机应用程序以进行开发和测试所需的步骤。本指南不讨论如何将完成的应用提交到 iTunes 商店。有关更多信息,请参阅 Apple Developer Portal(苹果开发者门户)。

在 Apple Developer Portal(苹果开发者门户)中需要执行以下步骤才能在 iOS 设备上运行应用程序

  1. 创建、下载和转换 iOS 证书。
  2. 创建应用程序 ID。
  3. 注册设备。
  4. 创建和下载 Provisioning Profile(配置文件)。

完成 Apple Developer Portal(苹果开发者门户)步骤后,然后

  1. 配置应用程序包配置。
  2. 生成您的应用程序。
  3. 复制并运行打包的应用程序。

iOS 证书创建、下载和转换

重要提示: 由于 iOS 证书包含有关创建应用程序的作者(个人和公司)的签名信息,因此通常执行此步骤一次。您可以将一个证书用于多个应用程序。

所有 iOS 原生应用程序都需要与 iOS 证书捆绑在一起,这些证书包含有关应用程序作者的信息。这些证书由 Apple Inc. 通过 Apple Developer Portal(苹果开发者门户)颁发和数字签名。

要生成 iOS 证书

  1. 生成证书签名请求 (CSR)。
  2. 导航到 Apple Developer Portal(苹果开发者门户),证书部分,然后单击 Add(添加)。
  3. 将 CSR 上传到开发者门户并生成 iOS 证书
  4. 下载 iOS 证书。
  5. 将 iOS 证书转换为 P12 格式。

在 Windows 下开发时,步骤相同,但方法和命令略有不同。

Mac OS 环境

您的 iOS 证书所需的所有工具都包含在 Mac OS 中,因此使用 Keychain Access(钥匙串访问)实用工具创建证书相对简单且容易。它位于您的“应用程序/实用工具”文件夹中。

生成证书签名请求

启动 KeyChain Access(钥匙串访问)实用工具。从应用程序菜单中,选择

Keychain access(钥匙串访问) > Certificate Assistant(证书助理) > Request a Certificate from a Certificate Authority(从证书颁发机构请求证书)。

在“证书信息”窗口中,输入或选择以下信息

  • “用户电子邮件地址”字段:您的电子邮件地址
  • “通用名称”字段:您的姓名
  • “请求是组”:选择 Save to disk(保存到磁盘)选项
  • 单击 Continue(继续)

如果您使用 Key Chain Assistant(钥匙串助理)创建 CSR,则当您创建证书签名请求 (CSR) 时,证书助理会将证书签名请求 (CSR) 文件保存到您的桌面。公钥和私钥对会在您创建证书签名请求 (CSR) 时生成。

上传 CSR 并生成 iOS 证书

创建 CSR 文件后,导航到 Apple Developer Portal(苹果开发者门户)的“证书”部分。要创建证书,请单击 Add(添加)按钮,然后选择证书类型 iOS App Development(iOS 应用开发)。然后,门户网站会要求您上传 CSR 文件。上传完成后,您可以生成并下载您的 iOS 证书。

将证书转换为 P12 格式

下载证书后(默认名称为 ios_development.cer),在将其捆绑到应用程序之前,将证书转换为 P12 格式。有关 P12 证书是什么的信息,请参阅 Wikipedia PKCS #12 文章。

要将证书转换为 P12 格式

  1. 在 Mac Keychain Access(钥匙串访问)实用工具中,单击 File(文件) > Import(导入),然后导航到下载的 ios_development.cer 文件的位置。
  2. 导入证书文件后,单击 Keys Category(密钥类别)。
  3. 单击与您的 Apple iOS 证书关联的私钥。私钥具有以下名称模式:iPhone Developer:<First Name> <Last Name> public key reference(公钥引用)。
  4. 单击 File(文件) > Export Items(导出项目),然后以 P12 格式保存密钥。
  5. 在 Sencha packager 配置文件中的 certificatePath 变量中指定此文件。

Windows 环境

您需要 OpenSSL 才能为您的应用程序生成自签名证书。适用于 Windows 的 OpenSSL 可在 Shining Light Productions 获得,您可以在其中下载和安装

  • Visual C++ 2008 Redistributables(OpenSSL 所需)
  • Open SSL Light(32 位或 64 位版本)

默认情况下,OpenSSL 安装在 \OpenSSL-WinXX 目录中,其中 XX 是 32 或 64,具体取决于您安装的版本。首先设置环境变量,以使 OpenSSL 正常运行,然后再继续生成创建数字证书所需的私钥。

创建私钥

以下示例生成私钥,这是签署数字证书所必需的

> cd \OpenSSL_Win64
> set OPENSSL_CONF=\OpenSSL-Win64\bin\openssl.cfg
> set RANDFILE=\OpenSSL-Win64\.rnd
> openssl genrsa -out myprivatekey.key 2048
Loading 'screen' into random state - done
Generating RSA private key, 2048 bit long modulus
................................................................+++
................................................................+++
e is 65537 (0x10001)
>

注意:安全地存储 myprivatekey.key 文件。您需要它来生成您的 P12 证书。

生成证书签名请求

CSR 是发送到证书颁发机构的消息,用于请求身份证书。有关更多信息,请参阅 Certificate signing request(证书签名请求)。

要创建 CSR,请在命令行中键入以下 openssl 命令

> openssl req -new -key myprivatekey.key -out mycert.csr 
Loading 'screen' into random state - done
You are about to be asked to enter information that will be incorporated 
into your certificate request.
What you are about to enter is called a Distinguished Name or a DN.
There are quite a few fields, but you can leave some blank.
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name <2 letter code> [AU]: US
State or Province Name <full name> [Some-State]: My State
Locality Name <eg, city> []: My City
Organizational Name <eg, company [Internet Widgits Pty Ltd]: MyCompany, Inc
Organizational Unit Name <eg, section> []:
Common Name <eg server FQDN or Your name> []: com.mydomain
Email Address [] [email protected]

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:

>

上传 CSR 并生成 iOS 证书

创建 CSR 文件后,导航到 Apple Developer Portal(苹果开发者门户)的“证书”部分。要创建证书,请单击 Add(添加)按钮,然后选择证书类型 iOS App Development(iOS 应用开发)。系统会要求您上传 CSR 文件。上传完成后,您可以生成然后下载您的 iOS 证书。

将证书转换为 P12 格式

下载证书后(默认名称为 ios_development.cer),将证书转换为 P12 格式,以便您可以将其捆绑到您的应用程序中。假设您位于下载 iOS 证书的目录中,请通过执行以下 openssl 命令将证书转换为 P12

> openssl x509 -in ios_development.cer -inform DER -out ios_development.pem -outform PEM
> openssl pkcs12 -export -inkey _myprivatekey.key_ -in ios_development.pem -out ios_development.p12

Loading 'screen' into random state - done
Enter Export Password:
Verifying - Enter Export Password:

其中 myprivatekey.key 是您在生成 CSR 时指定的密钥文件。

注意:如果您在 CSR 中没有输入质询密码,请按 Enter 键以使此请求为空。

生成的 .P12 文件是您在 packager 配置文件中为 certificatePath 设置指定的名称。

App ID 创建

App ID(应用程序 ID),也称为 Bundle ID(捆绑 ID),是用于标识您的应用程序的唯一字符串。从 Apple Developer Portal(苹果开发者门户)获取 App ID。

出于开发目的,您的所有应用都可以使用相同的 ID,但是对于生产环境,您提交到 iTunes 商店的每个应用程序的 ID 都必须是唯一的。通常,ID 的格式遵循 tld.domain 的反向域名约定(例如,com.mydomain.appname)。

App ID 在 Provisioning(配置文件)过程中用于在您正在开发的应用程序与 iOS 证书和允许在测试期间运行该应用程序的设备之间创建关系。

设备注册

(每个设备只需注册一次)- 如果您尚未在 Apple Developer portal(苹果开发者门户)中注册您的设备,请注册。您将需要您设备的唯一 ID (UDID),您可以从您的设备通过 iTunes 获取它。

要查看 UDID

  1. 在您的计算机(Mac 或 PC)上打开 iTunes。
  2. 插入您的 iOS 设备(iPhone、iPod 等)。
  3. 单击设备列表下方的名称。
  4. 确保您位于“摘要”选项卡上。
  5. 单击序列号 - 这将更改为您设备的 UDID。
  6. 从“编辑”菜单中单击 Copy(复制)。

将您的 UDID 放在剪贴板中以备使用,转到开发者门户并打开 Devices(设备)部分。

要添加您的设备

  1. 选择“设备”菜单选项。
  2. 单击右上角的 [+] 以打开“添加 iOS 设备”页面。
  3. 输入您设备的名称及其 UDID(从剪贴板粘贴)。
  4. 单击 Continue(继续)。

Provisioning Profile 创建和下载

此时,您已经使用您的凭据创建了 iOS 证书(步骤 1),定义了 App ID(步骤 2)并注册了您的 iOS 设备(步骤 3)。

您只剩下一个步骤,那就是将所有这些放在一起,以便您的 iOS 设备知道它可以信任您的应用程序。这就是 Provisioning(配置文件)完成的工作。

Provisioning Profile(配置文件)只是将 App ID 与授权运行该应用程序的 iOS 证书和设备链接起来。

要创建或更新 Provisioning profile(配置文件)

  1. 为您的配置文件命名。
  2. 指定此配置文件的 App ID 以及授权的 iOS 证书和设备。
  3. 生成并下载配置文件,默认名称为 _profileName_.mobile provision(其中 profileName 是您为配置文件指定的名称)。
  4. 在您的 packager 配置文件中使用 provisionProfile 设置指定下载的配置文件路径和位置

    "provisionProfile": "profileName.mobileprovision"

当应用程序加载到 iOS 设备上时,iOS 会将捆绑到应用程序中的 iOS 证书和设备的 UDID 与配置文件中找到的授权证书和设备 UDID 进行比较。如果找不到捆绑的 iOS 证书或设备 UDID,则不允许将应用程序加载到设备上。

您可以拥有多个配置文件,每个项目一个配置文件,或者为您的所有应用程序仅使用一个配置文件。如果您刚刚开始一个新应用程序,或者仍处于开发的早期阶段,那么最简单的事情是为所有开发使用一个配置文件。但是,最终,您可能会发现为每个应用程序创建特定的配置文件是明智的,因为在 provisioning(配置文件)门户中添加的 AppId 会与应用程序中配置的内容进行比较,并且每个应用程序在 App Store 中只允许一个 AppId。

有关配置文件的更多信息,请参阅 Apple iOS provisioning portal(苹果 iOS 配置文件门户)(需要 Apple ID 和密码)。

包配置

下一步是使用适合您的环境和应用程序测试的设置编辑 Sencha packager 文件。

注意 如果您正在使用 Touch Cordova 或 PhoneGap 功能,则不使用 packager 文件。有关更多信息,请参阅 Cordova 和 PhoneGap 应用程序

在您的应用程序的根目录中,应该有一个 packager 配置文件 - `packager.json'。如果此文件不存在,您可以轻松地使用以下命令生成一个

sencha app package generate packager.json

您现在可以编辑 packager 文件了。以下配置属性与 iOS 开发相关,并且对于 debug(调试)和 release(发布)配置都是必需的,除非另有说明

  • applicationName

您给应用程序起的名称。此名称显示在设备主屏幕上应用程序图标下方。

  • applicationId

也称为 Bundle ID(捆绑 ID),这是您的应用程序的唯一标识符。对于开发,您的所有应用程序可以共享相同的 App ID;但是对于生产环境,您提交到 iTunes 商店的每个应用程序的 App ID 都必须是唯一的。通常,ID 的格式遵循 "tld.domain" 的反向域名约定(例如,com.mydomain.appname)。

applicationId 必须与您在创建 App ID 时输入的应用程序 ID 匹配。

  • bundleSeedId

此值是在开发者门户中查看 App ID 时找到的 Prefix(前缀)值。它是一个 10 个字符的字符串,并且对于您帐户中的所有应用程序都是相同的。

  • configuration

您的原生应用构建的配置类型:为开发和测试指定 Debug,为发布到 iTunes 商店指定 Release

  • 平台

您的应用程序的目标平台:指定 iOS 以在真机上测试,或指定 iOSSimulator 以在 iOS 模拟器中查看您的应用程序。

  • 设备类型

应用程序的目标设备。指定 iPhoneiPad

  • 证书路径

您的证书文件(P12 文件)所在位置的路径。

  • Provisioning 文件

此应用程序的 Provisioning 文件的路径。

  • 权限

将权限设置为默认值是安全的。

保存您的打包器文件设置。

创建打包应用程序

在您的应用程序的根目录中构建您的原生应用程序

sencha app build native

此命令读取您的 packager.json 配置文件(如果您未使用 Cordova 或 PhoneGap),构建您的应用程序,并将其放置在 build 目录中。您可以通过执行目录列表来找到原生构建目标目录中生成的 app 压缩文件

$ cd build/<appname>/native/
$ ls
<applicationName>.app
$

其中 <appname> 是您运行 sencha generate app 命令时指定的应用程序名称,而 <applicationName> 是您在 packager.json 文件中为 applicationName 属性指定的值。

复制并运行您的应用程序

现在是您一直等待的时刻,在 iOS 设备上测试您的应用程序!

要将您的应用程序加载到您的设备上

  1. 启动 iTunes 并选择您资料库中的 应用 屏幕。
  2. 打开文件浏览器窗口,找到您的原生应用程序构建所在的 .app 目录。
  3. .app 目录拖到 iTunes 中的“应用”屏幕。
  4. 在 iTunes 的“设备”部分下选择您的 iOS 设备。
  5. 点击您设备上的 应用 选项卡。
  6. 找到您刚刚复制到您的应用资料库中的应用。
  7. 点击 安装
  8. 点击 应用 按钮以将应用从您的资料库复制到您的 iOS 设备。

现在切换到您的设备,找到您的应用程序并按下图标。您应该看到您的基本应用程序已启动并运行。

Sencha Touch 2.4