创建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
文件之前,在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
Tip
Tip
创建TouchGFX应用模板
执行以下指令创建最终的“.tpa”文件,并完成TouchGFX应用模板。
$ /d/TouchGFX/4.13.0/designer/tgfx.exe pack -rc -d MyApplication
测试& 验证
为了验证.tpa
文件能够作为TBS被TouchGFX Designer读取并用于创建新应用,执行下列步骤:
- 根据自己的要求重命名
.tpa
文件。 - 将
.tpa
文件复制或移动到C:\TouchGFX\4.13.0\app\packages
。 然后,用户可以将TBS从本地文件夹导入TouchGFX Designer。
- 打开TouchGFX Designer,在By Parterners选项卡下选择该TBS。
最终说明
下面一节包含在为TBS开发代码或分发TBS时要考虑的事项的提示。
一般提示
一般情况下,在分发.tpa
之前应:
- 确保提供的所有IDE项目按预期正常工作。
- 删除build-和generated文件夹,以便减少TBS的文件大小。
- 确保在TouchGFX项目文件
.touchgfx
中定义的自定义指令(PostGenerate-等)按预期正常工作。 - 确保TBS可以被TouchGFX Designer读取并用于创建新应用。
- 没有一种直接的方式来指定TBS版本之间的升级流程。
Tip
在分发.tpa
后,应指示用户将.tpa
文件复制到C:\TouchGFX\4.13.0\app\packages
中,并重启TouchGFX Designer(若已打开)。
版本控制
开发者通常会将整个开发项目(板启动搭建、TouchGFX AL和TouchGFX UI)保存在同一个存储库中,因此不需要可分发.tpa
文件。 但是,为了让团队成员能够启动新的TouchGFX应用,在进行测试和验证时,统一的平台代码很有用。
如需通过分发.tpa
文件和/或使用工具(如repo
、git子模
)来模块化代码库,最好按照前文所述.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