Touch Adaptation Kit Command Line Tool (tak.exe)
Use this topic to create and validate touch control layouts by using the Touch Adaptation Kit (TAK).
takxconfig.json and .takx Files
The primary file types that the tak.exe command line tool operates on are the unpacked bundle configuration file (takxconfig.json
), or a packaged bundle (.takx
) file.
Depending on the command being run one of these file types is always usable and represents the entire touch bundle. For backwards compatibility and to make some inner loop scenarios easier, legacy arguments like --layout-path
are still supported and will override content from the takxconfig.json
Properties
$schema
- string. JSON schema for a touch bundle config file. This should look similar to https://raw.githubusercontent.com/microsoft/xbox-game-streaming-tools/main/touch-adaptation-kit/schemas/takxconfig/v1/takxconfig.json
depending on the schema version selected.
version
- string. Four part (e.g. 1.0.0.0) version number for the bundle.
versionName
- string, optional. Descriptive name of the version of the bundle.
layouts
- object. Object defining the layouts option for the bundle. The path
property within this specifies the relative path where the layouts are located.
assets
- object, optional. Object defining the assets option for the bundle. The path
property within this specifies the relative path where the assets are located.
context
- object, optional. Object defining the context option for the bundle. The path
property within this specifies the relative path where the context file is located.
languages
- object, optional. Object defining the context option for the bundle. The items
property within this is an array that specifies languages supported by the bundle.
Samples
{
"$schema": "https://raw.githubusercontent.com/microsoft/xbox-game-streaming-tools/main/touch-adaptation-kit/schemas/takxconfig/v1/takxconfig.json",
"layouts": {
"path": "./layouts"
},
"assets": {
"path": "./assets"
},
"context": {
"path": "./context.json"
},
"languages": [
"en",
"en-US"
],
"version": "2.0.0.0"
}
Please see our GitHub for complete samples using the takxconfig.json
file.
Requirements
The version of the file is specified by the $schema
attribute in the json file. This specifies the specific set of properties available and enables IntelliSense in some editors.
The properties described above are valid for the latest supported schema version. For older schema properties please see our GitHub.
Commands
Use the commands shown in the following table to ensure that touch controls work as intended when your title is played by using Xbox Game Streaming.
Command | Description |
---|---|
create | Create the source content of a touch adaptation bundle, or add a layout to an existing one. |
convert | Convert a legacy layout set file into layout files that align with the latest format standards that our services support. |
license | Display or accept the End User License Agreement (EULA) of the Touch Adaptation Kit Command Line Tool. |
notice | Display information about the third party material incorporated in this software. |
pack | Builds a touch adaptation bundle from a set of source content. |
serve | Provides a touch adaptation bundle so that a client application can download and use it. |
settings | View and set application settings. |
takx-version | Determines the version of both the touch adaptation bundle and the maximum schema version of an included layout. |
unpack | Unpacks an existing touch adaptation bundle into its component files. |
verify | Verifies that the contents of the touch adaptation bundle are valid. |
version | Display version information about the Touch Adaptation Kit Command Line Tool. |
Options
Use the information in the following table to apply the appropriate flags to all commands.
Options | Description |
---|---|
-v , --verbosity |
Set the output verbosity of the command. The valid values for these flags are Critical , Debug , Error , Information , None , Trace , and Warning . The default verbosity is Information . |
--version |
Show version information. |
--accept-license |
Accept the license agreement of the application before running the command. Useful for automation. |
--reset-appId |
Reset the Application ID that is associated with your machine. |
-? , -h , --help |
Show help and usage information. |
See also
Getting started with touch
Web Content test application (CTA)