跳转到主要内容

创建TouchGFX应用模板

TouchGFX板件设置(TBS)是.tpa文件,定义了运行TouchGFX应用的平台。 对开发者而言,此方法可方便的生成能运行在硬件平台上的应用程序模板,并独立于 UI代码。 本文描述了如何使用内置工具tgfx.exe,将现有的TouchGFX项目封装到可再分发的TBS中。 本文中的示例基于名为“MyApplication”的应用。

在拥有了功能完整的TouchGFX项目后,需执行下列步骤来创建TBS。

  • 描述TouchGFX应用模板 调用tgfx.exe并编辑json文件(inherits from .touchgfx)
  • 创建TouchGFX应用模板 调用tgfx.exe以完成.tpa
  • 测设& 和验证导入designer工具,创建并验证应用

描述TouchGFX应用模板

tgfx.exe工具生成配置文件(.json),该文件描述TBS的内部信息。 TouchGFX Designer读取此信息并将其呈现给用户。 打开TouchGFX Environment控制台,并在应用的parent目录中执行下列指令:

$ /d/TouchGFX/4.13.0/designer/tgfx.exe pack -d MyApplication

为.tpa准备文件

在运行指令的目录中会创建下列文件:

生成的文件列表

在创建最终的.tpa文件之前,在TouchGFX Designer中编辑MyApplication.json,以便控制向用户显示TBS的方式。 用户应编辑以下部分:

  • 作者 使用Author字段指定作者姓名、电子邮箱和URL。
  • 数据 使用Data字段指定TBS版本、照片、开发板名称、供应商、描述和详细信息链接。
MyApplication.json
   ...
"Author": [
{
"Name": "Chad Brody",
"Contact": "chad.brody@mycompany.com",
"URL": "http://mycompany.com/"
}
],
...
"Data": {
"Version": {
"Major": 1,
"Minor": 0,
"Build": 0
},
"Name": "MyApplication",
"HumanFriendlyName": "MyApplication",
"BoardName": "Custom STM32 Board",
"Type": "TGAT",
"Vendor": "MyCompany",
"Description": "This is a working project on which to base your UI on top of.",
"DocumentationLink": "",
"Category": "",
"Images": [
"http://mysite.com/MyCustomBoard-front.png",
"http://mysite.com/MyCustomBoard-back.png"
],
...
}
}
Tip
务必将“类型”属性设置为TGAT。 否则,该TBS将不会显示在TouchGFX Designer中!
Tip
当创建UI模板或特定硬件模板的演示时,“类型”属性分别是TGUITGAPP
Tip
在显示TBS的扩展信息卡时,TouchGFX Designer能够显示该列表中的最多三幅图片(图片引用必须是URL)。 图片的最佳分辨率为400x280像素。

创建TouchGFX应用模板

执行以下指令创建最终的“.tpa”文件,并完成TouchGFX应用模板。

$ /d/TouchGFX/4.13.0/designer/tgfx.exe pack -rc -d MyApplication

创建TouchGFX应用模板

测试& 验证

为了验证.tpa文件能够作为TBS被TouchGFX Designer读取并用于创建新应用,执行下列步骤:

  1. 根据自己的要求重命名.tpa文件。
  2. .tpa文件复制或移动到C:\TouchGFX\4.13.0\app\packages。 然后,用户可以将TBS从本地文件夹导入TouchGFX Designer。

将TBS安装到本地文件夹

  1. 打开TouchGFX Designer,在By Parterners选项卡下选择该TBS。

TBS的相关信息

最终说明

下面一节包含在为TBS开发代码或分发TBS时要考虑的事项的提示。

一般提示

一般情况下,在分发.tpa之前应:

  1. 确保提供的所有IDE项目按预期正常工作。
  2. 删除build-和generated文件夹,以便减少TBS的文件大小。
  3. 确保在TouchGFX项目文件.touchgfx中定义的自定义指令(PostGenerate-等)按预期正常工作。
  4. 确保TBS可以被TouchGFX Designer读取并用于创建新应用。
  5. 没有一种直接的方式来指定TBS版本之间的升级流程。
Tip
在修改TouchGFX项目或“.json”文件的内容后,务必重新打包应用模板。

在分发.tpa后,应指示用户将.tpa文件复制到C:\TouchGFX\4.13.0\app\packages中,并重启TouchGFX Designer(若已打开)。

版本控制

开发者通常会将整个开发项目(板启动搭建、TouchGFX AL和TouchGFX UI)保存在同一个存储库中,因此不需要可分发.tpa文件。 但是,为了让团队成员能够启动新的TouchGFX应用,在进行测试和验证时,统一的平台代码很有用。

如需通过分发.tpa文件和/或使用工具(如repogit子模)来模块化代码库,最好按照前文所述.json描述文件中指定的版本来命名TBS组件版本。 如果使用模块化方法,则platform代码在被用作主项目结构中的模块的同时,仍可用于创建可分发.tpa文件。

  "Data": {
"Version": {
"Major": 3,
"Minor": 0,
"Build": 0
},
$ git tag
v1.1.0
v2.0.0
v2.1.0
v3.0.0