@maccesar/titools 2.10.0 → 3.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS-VERCEL-RESEARCH.md +23 -12
- package/README.md +81 -182
- package/agents/ti-pro.md +8 -14
- package/lib/cleanup.js +13 -0
- package/lib/commands/skills.js +2 -1
- package/lib/commands/update.js +4 -1
- package/lib/config.js +9 -11
- package/lib/platform.js +1 -1
- package/package.json +2 -3
- package/skills/purgetss/SKILL.md +12 -0
- package/skills/purgetss/references/animation-advanced.md +0 -9
- package/skills/purgetss/references/app-branding.md +20 -0
- package/skills/purgetss/references/appearance-module.md +85 -27
- package/skills/purgetss/references/apply-directive.md +60 -0
- package/skills/purgetss/references/arbitrary-values.md +41 -0
- package/skills/purgetss/references/cli-commands.md +52 -17
- package/skills/purgetss/references/custom-rules.md +36 -19
- package/skills/purgetss/references/customization-deep-dive.md +37 -15
- package/skills/purgetss/references/grid-layout.md +45 -26
- package/skills/purgetss/references/icon-fonts.md +27 -25
- package/skills/purgetss/references/installation-setup.md +28 -2
- package/skills/purgetss/references/ios-large-titles.md +31 -15
- package/skills/purgetss/references/multi-density-images.md +57 -0
- package/skills/purgetss/references/opacity-modifier.md +11 -2
- package/skills/purgetss/references/semantic-colors.md +44 -1
- package/skills/purgetss/references/tikit-components.md +1 -3
- package/skills/alloy-guides/SKILL.md +0 -190
- package/skills/alloy-guides/references/CLI_TASKS.md +0 -233
- package/skills/alloy-guides/references/CONCEPTS.md +0 -171
- package/skills/alloy-guides/references/CONTROLLERS.md +0 -279
- package/skills/alloy-guides/references/MODELS.md +0 -1214
- package/skills/alloy-guides/references/PURGETSS.md +0 -46
- package/skills/alloy-guides/references/VIEWS_DYNAMIC.md +0 -235
- package/skills/alloy-guides/references/VIEWS_STYLES.md +0 -375
- package/skills/alloy-guides/references/VIEWS_WITHOUT_CONTROLLERS.md +0 -102
- package/skills/alloy-guides/references/VIEWS_XML.md +0 -581
- package/skills/alloy-guides/references/WIDGETS.md +0 -160
- package/skills/alloy-howtos/SKILL.md +0 -181
- package/skills/alloy-howtos/references/best_practices.md +0 -121
- package/skills/alloy-howtos/references/cli_reference.md +0 -230
- package/skills/alloy-howtos/references/config_files.md +0 -158
- package/skills/alloy-howtos/references/custom_tags.md +0 -148
- package/skills/alloy-howtos/references/debugging_troubleshooting.md +0 -78
- package/skills/alloy-howtos/references/samples.md +0 -156
- package/skills/ti-api/SKILL.md +0 -109
- package/skills/ti-api/references/api-android.md +0 -675
- package/skills/ti-api/references/api-app-platform.md +0 -636
- package/skills/ti-api/references/api-core.md +0 -764
- package/skills/ti-api/references/api-data-network.md +0 -641
- package/skills/ti-api/references/api-media.md +0 -655
- package/skills/ti-api/references/api-modules-ble-bluetooth.md +0 -657
- package/skills/ti-api/references/api-modules-coremotion-urlsession.md +0 -411
- package/skills/ti-api/references/api-modules-map.md +0 -632
- package/skills/ti-api/references/api-modules-nfc.md +0 -725
- package/skills/ti-api/references/api-modules-social-misc.md +0 -526
- package/skills/ti-api/references/api-services.md +0 -700
- package/skills/ti-api/references/api-ui-android.md +0 -499
- package/skills/ti-api/references/api-ui-extras.md +0 -702
- package/skills/ti-api/references/api-ui-ios-animator.md +0 -378
- package/skills/ti-api/references/api-ui-ios.md +0 -756
- package/skills/ti-api/references/api-ui-lists.md +0 -581
- package/skills/ti-api/references/api-ui-text-input.md +0 -607
- package/skills/ti-api/references/api-ui-views.md +0 -572
- package/skills/ti-api/references/api-ui-windows-navigation.md +0 -676
- package/skills/ti-api/references/api-xml-global.md +0 -743
- package/skills/ti-guides/SKILL.md +0 -75
- package/skills/ti-guides/references/advanced-data-and-images.md +0 -155
- package/skills/ti-guides/references/android-manifest.md +0 -97
- package/skills/ti-guides/references/app-distribution.md +0 -373
- package/skills/ti-guides/references/application-frameworks.md +0 -366
- package/skills/ti-guides/references/cli-reference.md +0 -700
- package/skills/ti-guides/references/coding-best-practices.md +0 -150
- package/skills/ti-guides/references/commonjs-advanced.md +0 -279
- package/skills/ti-guides/references/hello-world.md +0 -99
- package/skills/ti-guides/references/hyperloop-native-access.md +0 -458
- package/skills/ti-guides/references/javascript-primer.md +0 -402
- package/skills/ti-guides/references/reserved-words.md +0 -36
- package/skills/ti-guides/references/resources.md +0 -172
- package/skills/ti-guides/references/style-and-conventions.md +0 -104
- package/skills/ti-guides/references/tiapp-config.md +0 -655
- package/skills/ti-howtos/SKILL.md +0 -143
- package/skills/ti-howtos/references/android-platform-deep-dives.md +0 -609
- package/skills/ti-howtos/references/automation-fastlane-appium.md +0 -96
- package/skills/ti-howtos/references/buffer-codec-streams.md +0 -162
- package/skills/ti-howtos/references/cross-platform-development.md +0 -358
- package/skills/ti-howtos/references/debugging-profiling.md +0 -473
- package/skills/ti-howtos/references/extending-titanium.md +0 -684
- package/skills/ti-howtos/references/google-maps-v2.md +0 -172
- package/skills/ti-howtos/references/ios-map-kit.md +0 -149
- package/skills/ti-howtos/references/ios-platform-deep-dives.md +0 -595
- package/skills/ti-howtos/references/local-data-sources.md +0 -310
- package/skills/ti-howtos/references/location-and-maps.md +0 -267
- package/skills/ti-howtos/references/media-apis.md +0 -268
- package/skills/ti-howtos/references/notification-services.md +0 -539
- package/skills/ti-howtos/references/remote-data-sources.md +0 -339
- package/skills/ti-howtos/references/tutorials.md +0 -552
- package/skills/ti-howtos/references/using-modules.md +0 -182
- package/skills/ti-howtos/references/web-content-integration.md +0 -288
- package/skills/ti-howtos/references/webpack-build-pipeline.md +0 -125
|
@@ -1,700 +0,0 @@
|
|
|
1
|
-
# Titanium CLI reference
|
|
2
|
-
|
|
3
|
-
Reference for Titanium CLI commands, options, and configuration.
|
|
4
|
-
|
|
5
|
-
## Environment setup
|
|
6
|
-
|
|
7
|
-
### Check environment
|
|
8
|
-
|
|
9
|
-
```bash
|
|
10
|
-
ti setup check
|
|
11
|
-
```
|
|
12
|
-
|
|
13
|
-
Reports configured tools and potential issues.
|
|
14
|
-
|
|
15
|
-
### Setup wizard
|
|
16
|
-
|
|
17
|
-
```bash
|
|
18
|
-
ti setup
|
|
19
|
-
ti setup <section>
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
Runs the interactive setup wizard. The `<section>` can be one of: quick, check, user, app, network, cli, sdk, ios, android, and paths.
|
|
23
|
-
|
|
24
|
-
### Get system info
|
|
25
|
-
|
|
26
|
-
```bash
|
|
27
|
-
ti info
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
Detailed environment info (SDKs, certificates, provisioning profiles).
|
|
31
|
-
|
|
32
|
-
```bash
|
|
33
|
-
ti info -p android # Android-specific info
|
|
34
|
-
ti info -p ios # iOS-specific info
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
#### Info options
|
|
38
|
-
|
|
39
|
-
| Option | Description |
|
|
40
|
-
| ---------------------- | --------------------------------------------------------------------------------------------------- |
|
|
41
|
-
| `-o, --output <value>` | Output format: report or json. Defaults to report. |
|
|
42
|
-
| `-t, --types <value>` | Comma-separated list of types: all, os, nodejs, titanium, ios, jdk, haxm, android. Defaults to all. |
|
|
43
|
-
|
|
44
|
-
### Help
|
|
45
|
-
|
|
46
|
-
Displays the help screen for the CLI or a specific command.
|
|
47
|
-
|
|
48
|
-
```bash
|
|
49
|
-
ti help
|
|
50
|
-
ti help <command>
|
|
51
|
-
ti --help
|
|
52
|
-
ti <command> --help
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
### Configure CLI
|
|
56
|
-
|
|
57
|
-
```bash
|
|
58
|
-
# Display current config
|
|
59
|
-
ti config
|
|
60
|
-
|
|
61
|
-
# Set option
|
|
62
|
-
ti config cli.logLevel info
|
|
63
|
-
|
|
64
|
-
# Append to path
|
|
65
|
-
ti config -a paths.hooks "/path/to/hook"
|
|
66
|
-
|
|
67
|
-
# Remove all Android options
|
|
68
|
-
ti config -r android
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
#### Config options
|
|
72
|
-
|
|
73
|
-
| Option | Description |
|
|
74
|
-
| ---------------------- | ---------------------------------------------------------------- |
|
|
75
|
-
| `-a, --append` | Append a value to a key containing a list of values. |
|
|
76
|
-
| `-r, --remove` | Remove the specified config key and all its descendants. |
|
|
77
|
-
| `-o, --output <value>` | Output format: report, json, or json-object. Defaults to report. |
|
|
78
|
-
|
|
79
|
-
Alternative methods:
|
|
80
|
-
```bash
|
|
81
|
-
# Pass JSON string
|
|
82
|
-
ti build -p ios --config "{ paths: { hooks: '/path/to/hook' } }"
|
|
83
|
-
|
|
84
|
-
# Pass JSON file
|
|
85
|
-
ti build -p ios --config-file "/Users/me/customConfig.json"
|
|
86
|
-
```
|
|
87
|
-
|
|
88
|
-
---
|
|
89
|
-
|
|
90
|
-
## Project commands
|
|
91
|
-
|
|
92
|
-
### Create project
|
|
93
|
-
|
|
94
|
-
For Alloy projects (recommended):
|
|
95
|
-
```bash
|
|
96
|
-
ti create -t app --alloy --id <APP_ID> -n <APP_NAME> -p <PLATFORMS> -d <WORKSPACE> -u <URL>
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
Example (Alloy):
|
|
100
|
-
```bash
|
|
101
|
-
ti create -t app --alloy --id com.titaniumsdk.sample -n SampleProject -p android,ios -d ~/Documents/workspace -u https://titaniumsdk.com
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
For Classic Titanium projects:
|
|
105
|
-
```bash
|
|
106
|
-
ti create -t app --id <APP_ID> -n <APP_NAME> -p <PLATFORMS> -d <WORKSPACE> -u <URL>
|
|
107
|
-
```
|
|
108
|
-
|
|
109
|
-
Parameters:
|
|
110
|
-
- `--alloy`: create an Alloy project (recommended for new projects)
|
|
111
|
-
- `-t, --type`: project type: app (default), applewatch, module (or timodule)
|
|
112
|
-
- `--id`: app ID (reverse domain notation)
|
|
113
|
-
- `-n, --name`: app name
|
|
114
|
-
- `-p, --platforms`: comma-separated platforms (`android`, `ios`, `ipad`, `iphone`)
|
|
115
|
-
- `-d, --workspace-dir`: workspace directory
|
|
116
|
-
- `-u, --url`: app URL
|
|
117
|
-
- `-f, --force`: force creation even if the path already exists
|
|
118
|
-
- `--template`: project template to use (name, directory, ZIP file, or remote ZIP URL)
|
|
119
|
-
- `-s, --sdk`: Titanium SDK version to use
|
|
120
|
-
|
|
121
|
-
Use `--alloy` for new projects. Use Classic (`--classic` or omitting `--alloy`) only for legacy projects.
|
|
122
|
-
|
|
123
|
-
### Build project
|
|
124
|
-
|
|
125
|
-
```bash
|
|
126
|
-
ti build -p <PLATFORM> [OPTIONS]
|
|
127
|
-
```
|
|
128
|
-
|
|
129
|
-
### Project management
|
|
130
|
-
|
|
131
|
-
```bash
|
|
132
|
-
ti project [OPTIONS] [<key>] [<value>]
|
|
133
|
-
```
|
|
134
|
-
|
|
135
|
-
Gets and sets `tiapp.xml` settings. When called with a key, returns the value. When called with a key and value, sets the value in `tiapp.xml`.
|
|
136
|
-
|
|
137
|
-
It also allows you to set deployment targets using a comma-separated list of platforms. If a platform is enabled for the first time, it will copy default resources into the project Resources folder without overwriting.
|
|
138
|
-
|
|
139
|
-
Examples:
|
|
140
|
-
```bash
|
|
141
|
-
# Get a tiapp.xml value
|
|
142
|
-
ti project sdk-version
|
|
143
|
-
|
|
144
|
-
# Set a tiapp.xml value
|
|
145
|
-
ti project sdk-version 12.2.0.GA
|
|
146
|
-
|
|
147
|
-
# Set deployment targets (must list all desired platforms)
|
|
148
|
-
ti project deployment-targets iphone,ipad,android
|
|
149
|
-
```
|
|
150
|
-
|
|
151
|
-
Tasks:
|
|
152
|
-
- `scan`: scan a directory for Titanium projects
|
|
153
|
-
|
|
154
|
-
Options:
|
|
155
|
-
|
|
156
|
-
| Option | Description |
|
|
157
|
-
| --------------------------- | ------------------------------------------------------------------------ |
|
|
158
|
-
| `-o, --output <value>` | Output format: report, json, or text. Defaults to report. |
|
|
159
|
-
| `--project-dir <directory>` | Directory containing the project. Defaults to current working directory. |
|
|
160
|
-
|
|
161
|
-
---
|
|
162
|
-
|
|
163
|
-
## Build commands
|
|
164
|
-
|
|
165
|
-
### Generic build options and flags
|
|
166
|
-
|
|
167
|
-
| Option | Description |
|
|
168
|
-
| ------------------------------- | -------------------------------------------------------------------------------------------------------- |
|
|
169
|
-
| `-b, --build-only` | Only perform the build; does not install or run the app. |
|
|
170
|
-
| `-f, --force` | Force a clean rebuild. |
|
|
171
|
-
| `--skip-js-minify` | Bypass JavaScript minification. Simulator builds are never minified. Only supported for Android and iOS. |
|
|
172
|
-
| `--log-level <level>` | Minimum logging level: trace, debug, info, warn, error. |
|
|
173
|
-
| `-p, --platforms <platform>` | Target build platform: android or ios (iphone and ipad are accepted as synonyms for ios). |
|
|
174
|
-
| `-d, --project-dir <directory>` | Directory containing the project. Defaults to current working directory. |
|
|
175
|
-
| `-s, --sdk <version>` | Titanium SDK version to build with. |
|
|
176
|
-
|
|
177
|
-
### Android emulator
|
|
178
|
-
|
|
179
|
-
```bash
|
|
180
|
-
ti build -p android [-C <EMULATOR_NAME>]
|
|
181
|
-
```
|
|
182
|
-
|
|
183
|
-
Example:
|
|
184
|
-
```bash
|
|
185
|
-
ti build -p android -C "Google Nexus 7 - 4.4.2 - API 19 - 800x1280"
|
|
186
|
-
```
|
|
187
|
-
|
|
188
|
-
List emulators: `ti info -p android`
|
|
189
|
-
|
|
190
|
-
### Android device
|
|
191
|
-
|
|
192
|
-
```bash
|
|
193
|
-
ti build -p android -T device -C <DEVICE_ID>
|
|
194
|
-
```
|
|
195
|
-
|
|
196
|
-
Example:
|
|
197
|
-
```bash
|
|
198
|
-
ti build -p android -T device -C deadbeef
|
|
199
|
-
```
|
|
200
|
-
|
|
201
|
-
Omit `-C` if only one device is connected.
|
|
202
|
-
|
|
203
|
-
### Android build options
|
|
204
|
-
|
|
205
|
-
| Option | Description |
|
|
206
|
-
| --------------------------------- | ----------------------------------------------------------------------------------------------------- |
|
|
207
|
-
| `-A, --android-sdk <path>` | Path to the Android SDK. |
|
|
208
|
-
| `-C, --device-id <name>` | Name of the device or emulator. Use "all" with --target "device" to install on all connected devices. |
|
|
209
|
-
| `-D, --deploy-type <type>` | Controls optimization, encryption, analytics: development, test, production. |
|
|
210
|
-
| `-K, --keystore <path>` | Location of the keystore file. |
|
|
211
|
-
| `--key-password <keypass>` | Password of the keystore private key. Defaults to --store-password value. |
|
|
212
|
-
| `--liveview` | Start a LiveView session for live UI previews. |
|
|
213
|
-
| `-L, --alias <alias>` | Alias for the keystore. |
|
|
214
|
-
| `--no-launch` | Disable launching the app after installing. |
|
|
215
|
-
| `-O, --output-dir <dir>` | Output directory (used when target is dist-playstore). |
|
|
216
|
-
| `-P, --store-password <password>` | Password for the keystore. |
|
|
217
|
-
| `--sigalg <algorithm>` | Digital signature algorithm: MD5withRSA, SHA1withRSA, SHA256withRSA. |
|
|
218
|
-
| `-T, --target <value>` | Target: emulator, device, or dist-playstore. |
|
|
219
|
-
|
|
220
|
-
### iOS simulator
|
|
221
|
-
|
|
222
|
-
```bash
|
|
223
|
-
ti build -p ios [-C <SIMULATOR_NAME>]
|
|
224
|
-
```
|
|
225
|
-
|
|
226
|
-
Example:
|
|
227
|
-
```bash
|
|
228
|
-
ti build -p ios -C "iPad Retina"
|
|
229
|
-
```
|
|
230
|
-
|
|
231
|
-
### iOS device
|
|
232
|
-
|
|
233
|
-
```bash
|
|
234
|
-
ti build -p ios -T device -C <DEVICE_UDID> [-V "<CERT_NAME>" -P <PROFILE_UUID>]
|
|
235
|
-
```
|
|
236
|
-
|
|
237
|
-
Example:
|
|
238
|
-
```bash
|
|
239
|
-
ti build -p ios -T device -C itunes -V "Loretta Martin (GE7BAC5)" -P "11111111-2222-3333-4444-555555555555"
|
|
240
|
-
```
|
|
241
|
-
|
|
242
|
-
Omit `-V` and `-P` to be prompted.
|
|
243
|
-
|
|
244
|
-
### iOS build options
|
|
245
|
-
|
|
246
|
-
| Option | Description |
|
|
247
|
-
| -------------------------------- | ------------------------------------------------------------------------------------------------------ |
|
|
248
|
-
| `-C, --device-id <name>` | Name of the device or simulator. Use "all" with --target "device" to install on all connected devices. |
|
|
249
|
-
| `-D, --deploy-type <type>` | Controls optimization, encryption, analytics: development, test, production. |
|
|
250
|
-
| `-F, --device-family <value>` | Device family: iphone, ipad, or universal (default). |
|
|
251
|
-
| `--force-copy` | Force files to be copied instead of symlinked (simulator builds only). |
|
|
252
|
-
| `-I, --ios-version <value>` | iOS SDK version to build for. Default: latest installed. |
|
|
253
|
-
| `-K, --keychain <value>` | Path to distribution keychain (for device/dist targets). |
|
|
254
|
-
| `--launch-bundle-id <id>` | After installing in simulator, launch a different app (useful for test runners). |
|
|
255
|
-
| `--launch-watch-app` | Launch both the watch app and main app (simulator only). |
|
|
256
|
-
| `--launch-watch-app-only` | Launch only the watch app (simulator only). |
|
|
257
|
-
| `-O, --output-dir <dir>` | Output directory (used when target is dist-adhoc). |
|
|
258
|
-
| `-P, --pp-uuid <uuid>` | Provisioning profile UUID (for device/dist targets). |
|
|
259
|
-
| `-R, --distribution-name <name>` | iOS Distribution Certificate (for dist targets). |
|
|
260
|
-
| `--sim-focus` | Focus the iOS Simulator after launching (default: true). Use --no-sim-focus to disable. |
|
|
261
|
-
| `-T, --target <value>` | Target: simulator, device, dist-appstore, dist-adhoc, macos, or dist-macappstore. |
|
|
262
|
-
| `-V, --developer-name <name>` | iOS Developer Certificate (required for device target). |
|
|
263
|
-
| `-W, --watch-device-id <udid>` | Watch simulator UDID (simulator only). |
|
|
264
|
-
| `--watch-app-name <name>` | Name of the watch app to launch (simulator only). |
|
|
265
|
-
| `-Y, --sim-type <type>` | iOS Simulator type: iphone or ipad (simulator only). |
|
|
266
|
-
|
|
267
|
-
### Clean build
|
|
268
|
-
|
|
269
|
-
```bash
|
|
270
|
-
ti clean [-p <PLATFORM>]
|
|
271
|
-
```
|
|
272
|
-
|
|
273
|
-
Examples:
|
|
274
|
-
```bash
|
|
275
|
-
ti clean # All platforms
|
|
276
|
-
ti clean -p ios # iOS only
|
|
277
|
-
```
|
|
278
|
-
|
|
279
|
-
#### Clean options
|
|
280
|
-
|
|
281
|
-
| Option | Description |
|
|
282
|
-
| ------------------------------- | ------------------------------------------------------------------------ |
|
|
283
|
-
| `-p, --platforms <platform>` | A single platform to clean: android or ios. |
|
|
284
|
-
| `-d, --project-dir <directory>` | Directory containing the project. Defaults to current working directory. |
|
|
285
|
-
| `-s, --sdk <version>` | Titanium SDK version. |
|
|
286
|
-
| `--log-level <level>` | Minimum logging level: trace, debug, info, warn, error. |
|
|
287
|
-
|
|
288
|
-
### Module management
|
|
289
|
-
|
|
290
|
-
```bash
|
|
291
|
-
ti module [TASK] [OPTIONS]
|
|
292
|
-
```
|
|
293
|
-
|
|
294
|
-
Tasks:
|
|
295
|
-
- `create`: create a new Titanium module
|
|
296
|
-
- `list`: list installed Titanium modules
|
|
297
|
-
|
|
298
|
-
#### Module create
|
|
299
|
-
|
|
300
|
-
```bash
|
|
301
|
-
ti create -t module --id <MODULE_ID> -n <MODULE_NAME> -p <PLATFORMS> -d <WORKSPACE>
|
|
302
|
-
```
|
|
303
|
-
|
|
304
|
-
Parameters:
|
|
305
|
-
- `-t, --type`: set to module (or timodule)
|
|
306
|
-
- `--id`: module ID (reverse domain notation)
|
|
307
|
-
- `-n, --name`: module name
|
|
308
|
-
- `-p, --platforms`: target platforms
|
|
309
|
-
- `-d, --workspace-dir`: workspace directory
|
|
310
|
-
- `-f, --force`: force creation even if path already exists
|
|
311
|
-
- `--template`: module template to use
|
|
312
|
-
|
|
313
|
-
#### Module list
|
|
314
|
-
|
|
315
|
-
Prints a list of installed modules.
|
|
316
|
-
|
|
317
|
-
```bash
|
|
318
|
-
ti module
|
|
319
|
-
ti module list
|
|
320
|
-
ti module list --project-dir /path/to/project
|
|
321
|
-
```
|
|
322
|
-
|
|
323
|
-
Options:
|
|
324
|
-
|
|
325
|
-
| Option | Description |
|
|
326
|
-
| ----------------------- | --------------------------------------------------------------------------- |
|
|
327
|
-
| `-o, --output <value>` | Output format: report, json, or grid. Defaults to report. |
|
|
328
|
-
| `--project-dir <value>` | Directory of the project to analyze. Defaults to current working directory. |
|
|
329
|
-
|
|
330
|
-
### Plugin management
|
|
331
|
-
|
|
332
|
-
```bash
|
|
333
|
-
ti plugin [TASK] [OPTIONS]
|
|
334
|
-
```
|
|
335
|
-
|
|
336
|
-
#### Plugin list
|
|
337
|
-
|
|
338
|
-
Prints a list of installed plugins.
|
|
339
|
-
|
|
340
|
-
```bash
|
|
341
|
-
ti plugin
|
|
342
|
-
ti plugin list
|
|
343
|
-
ti plugin list --project-dir /path/to/project
|
|
344
|
-
```
|
|
345
|
-
|
|
346
|
-
Options:
|
|
347
|
-
|
|
348
|
-
| Option | Description |
|
|
349
|
-
| ----------------------- | --------------------------------------------------------------------------- |
|
|
350
|
-
| `-o, --output <value>` | Output format: report, json, or grid. Defaults to report. |
|
|
351
|
-
| `--project-dir <value>` | Directory of the project to analyze. Defaults to current working directory. |
|
|
352
|
-
|
|
353
|
-
---
|
|
354
|
-
|
|
355
|
-
## Distribution commands
|
|
356
|
-
|
|
357
|
-
### Google Play (Android)
|
|
358
|
-
|
|
359
|
-
```bash
|
|
360
|
-
ti build -p android -T dist-playstore [-K <KEYSTORE> -P <PASSWORD> -L <ALIAS> -O <OUTPUT>]
|
|
361
|
-
```
|
|
362
|
-
|
|
363
|
-
Example:
|
|
364
|
-
```bash
|
|
365
|
-
ti build -p android -T dist-playstore -K ~/android.keystore -P secret -L foo -O ./dist/
|
|
366
|
-
```
|
|
367
|
-
|
|
368
|
-
If key password differs from keystore password:
|
|
369
|
-
```bash
|
|
370
|
-
--key-password <KEYPASS>
|
|
371
|
-
```
|
|
372
|
-
|
|
373
|
-
### Ad Hoc (iOS)
|
|
374
|
-
|
|
375
|
-
```bash
|
|
376
|
-
ti build -p ios -T dist-adhoc [-R <CERT_NAME> -P <PROFILE_UUID> -O <OUTPUT>]
|
|
377
|
-
```
|
|
378
|
-
|
|
379
|
-
Example:
|
|
380
|
-
```bash
|
|
381
|
-
ti build -p ios -T dist-adhoc -R "Pseudo, Inc." -P "FFFFFFFF-EEEE-DDDD-CCCC-BBBBBBBBBBBB" -O ./dist/
|
|
382
|
-
```
|
|
383
|
-
|
|
384
|
-
### App Store (iOS)
|
|
385
|
-
|
|
386
|
-
```bash
|
|
387
|
-
ti build -p ios -T dist-appstore [-R <CERT_NAME> -P <PROFILE_UUID>]
|
|
388
|
-
```
|
|
389
|
-
|
|
390
|
-
Example:
|
|
391
|
-
```bash
|
|
392
|
-
ti build -p ios -T dist-appstore -R "Pseudo, Inc." -P "AAAAAAAA-0000-9999-8888-777777777777"
|
|
393
|
-
```
|
|
394
|
-
|
|
395
|
-
Installs the package to Xcode Organizer.
|
|
396
|
-
|
|
397
|
-
### Mac Catalyst (macOS Development)
|
|
398
|
-
|
|
399
|
-
```bash
|
|
400
|
-
ti build -p ios -T macos
|
|
401
|
-
```
|
|
402
|
-
|
|
403
|
-
Builds a Mac Catalyst version of your iOS app for local testing. The resulting `.app` bundle is located at:
|
|
404
|
-
```
|
|
405
|
-
build/iphone/build/Products/Debug-maccatalyst/AppName.app
|
|
406
|
-
```
|
|
407
|
-
|
|
408
|
-
For a production build:
|
|
409
|
-
```bash
|
|
410
|
-
ti build -p ios -T macos --deploy-type production
|
|
411
|
-
```
|
|
412
|
-
|
|
413
|
-
The release `.app` bundle will be at:
|
|
414
|
-
```
|
|
415
|
-
build/iphone/build/Products/Release-maccatalyst/AppName.app
|
|
416
|
-
```
|
|
417
|
-
|
|
418
|
-
### Mac App Store (Mac Catalyst Distribution)
|
|
419
|
-
|
|
420
|
-
```bash
|
|
421
|
-
ti build -p ios -T dist-macappstore [-R <CERT_NAME>]
|
|
422
|
-
```
|
|
423
|
-
|
|
424
|
-
Example:
|
|
425
|
-
```bash
|
|
426
|
-
ti build -p ios -T dist-macappstore -R "Apple Distribution: Your Name (TEAM_ID)"
|
|
427
|
-
```
|
|
428
|
-
|
|
429
|
-
**Important Notes:**
|
|
430
|
-
- Requires a Mac App Store Distribution Certificate (not iOS Distribution)
|
|
431
|
-
- The build creates an archive for Mac App Store distribution
|
|
432
|
-
- The `.xcarchive` is installed in Xcode's Organizer
|
|
433
|
-
- Uses `Release-maccatalyst` configuration
|
|
434
|
-
- Destination: `generic/platform=macOS`
|
|
435
|
-
- Code signing is set to Manual with identity `-`
|
|
436
|
-
|
|
437
|
-
The target `dist-macappstore` is available in Titanium SDK 13.1.1.GA and later.
|
|
438
|
-
|
|
439
|
-
---
|
|
440
|
-
|
|
441
|
-
## SDK management
|
|
442
|
-
|
|
443
|
-
### List SDKs
|
|
444
|
-
|
|
445
|
-
```bash
|
|
446
|
-
ti sdk list
|
|
447
|
-
```
|
|
448
|
-
|
|
449
|
-
Options:
|
|
450
|
-
|
|
451
|
-
| Option | Description |
|
|
452
|
-
| ---------------------- | -------------------------------------------------- |
|
|
453
|
-
| `-b, --branches` | Retrieve and print all branches. |
|
|
454
|
-
| `-r, --releases` | Retrieve and print all releases. |
|
|
455
|
-
| `-o, --output <value>` | Output format: report or json. Defaults to report. |
|
|
456
|
-
|
|
457
|
-
### Select SDK
|
|
458
|
-
|
|
459
|
-
```bash
|
|
460
|
-
ti sdk select [<version>]
|
|
461
|
-
```
|
|
462
|
-
|
|
463
|
-
Interactive selection of default SDK. This sets the SDK used to run CLI commands. If the `tiapp.xml` file does not contain an SDK version and the `app.sdk` setting is not set, the application will be built with this SDK.
|
|
464
|
-
|
|
465
|
-
### Install SDK
|
|
466
|
-
|
|
467
|
-
Downloads the latest Titanium SDK or a specific version.
|
|
468
|
-
|
|
469
|
-
```bash
|
|
470
|
-
ti sdk install [<version>] [--default] [--force] [--branch <branch_name>]
|
|
471
|
-
```
|
|
472
|
-
|
|
473
|
-
`<version>` may be a specific version number (for example, `12.2.0.GA`), a URL to a ZIP file, or a local ZIP file path.
|
|
474
|
-
|
|
475
|
-
Options:
|
|
476
|
-
|
|
477
|
-
| Option | Description |
|
|
478
|
-
| ---------------------------- | ------------------------------------ |
|
|
479
|
-
| `-d, --default` | Set as the default SDK. |
|
|
480
|
-
| `-f, --force` | Force reinstallation. |
|
|
481
|
-
| `-k, --keep-files` | Keep downloaded files after install. |
|
|
482
|
-
| `-b, --branch <branch_name>` | Branch to install from, or "latest". |
|
|
483
|
-
|
|
484
|
-
### Uninstall SDK
|
|
485
|
-
|
|
486
|
-
Uninstalls a specific Titanium SDK version.
|
|
487
|
-
|
|
488
|
-
```bash
|
|
489
|
-
ti sdk uninstall [<version>] [--force]
|
|
490
|
-
```
|
|
491
|
-
|
|
492
|
-
Options:
|
|
493
|
-
|
|
494
|
-
| Option | Description |
|
|
495
|
-
| ------------- | ------------------------------------------ |
|
|
496
|
-
| `-f, --force` | Force uninstallation without confirmation. |
|
|
497
|
-
|
|
498
|
-
### Update SDK
|
|
499
|
-
|
|
500
|
-
Finds the latest version of the Titanium SDK and optionally installs it.
|
|
501
|
-
|
|
502
|
-
```bash
|
|
503
|
-
ti sdk update [--default] [--force] [--install] [--branch <branch_name>]
|
|
504
|
-
```
|
|
505
|
-
|
|
506
|
-
Options:
|
|
507
|
-
|
|
508
|
-
| Option | Description |
|
|
509
|
-
| ---------------------------- | --------------------------- |
|
|
510
|
-
| `-d, --default` | Set as the default SDK. |
|
|
511
|
-
| `-f, --force` | Force reinstallation. |
|
|
512
|
-
| `-i, --install` | Install the latest version. |
|
|
513
|
-
| `-b, --branch <branch_name>` | Branch to update from. |
|
|
514
|
-
|
|
515
|
-
---
|
|
516
|
-
|
|
517
|
-
## Configuration options
|
|
518
|
-
|
|
519
|
-
### Android options
|
|
520
|
-
|
|
521
|
-
| Option | Default | Description |
|
|
522
|
-
| ------------------------------------ | ----------- | -------------------------------- |
|
|
523
|
-
| `android.sdkPath` | auto | Android SDK path |
|
|
524
|
-
| `android.ndkPath` | auto | Android NDK path |
|
|
525
|
-
| `android.adb.port` | 5037 | ADB port number |
|
|
526
|
-
| `android.autoSelectDevice` | true | Auto-select device/emulator |
|
|
527
|
-
| `android.symlinkResources` | true (OS X) | Symlink vs copy resources |
|
|
528
|
-
| `android.buildTools.selectedVersion` | max | Build tools version |
|
|
529
|
-
| `android.javac.maxmemory` | "3072M" | JVM heap size |
|
|
530
|
-
| `android.javac.source` | "1.8" | Java source version |
|
|
531
|
-
| `android.javac.target` | "1.8" | Java target version |
|
|
532
|
-
| `android.mergeCustomAndroidManifest` | false | Merge custom AndroidManifest.xml |
|
|
533
|
-
|
|
534
|
-
The `android.javac.source` and `android.javac.target` defaults were originally "1.6" in earlier SDK versions. Modern Titanium SDK requires Java 1.8 or higher. You can override these per-project in `tiapp.xml` using `<property name="android.javac.source" type="string">1.8</property>`.
|
|
535
|
-
|
|
536
|
-
### iOS options
|
|
537
|
-
|
|
538
|
-
| Option | Default | Description |
|
|
539
|
-
| ---------------------- | ----------- | ------------------------------------- |
|
|
540
|
-
| `ios.developerName` | - | Developer certificate name |
|
|
541
|
-
| `ios.distributionName` | - | Distribution certificate name |
|
|
542
|
-
| `ios.autoSelectDevice` | true | Auto-select device/simulator |
|
|
543
|
-
| `ios.symlinkResources` | true (OS X) | Symlink vs copy resources |
|
|
544
|
-
| `ios.keychain` | - | Specific keychain to search for certs |
|
|
545
|
-
| `ios.xcodePath` | auto | Path to Xcode installation |
|
|
546
|
-
|
|
547
|
-
### CLI options
|
|
548
|
-
|
|
549
|
-
| Option | Default | Description |
|
|
550
|
-
| ------------------------ | ------- | --------------------------------------------- |
|
|
551
|
-
| `cli.logLevel` | trace | Log level: error, warning, info, debug, trace |
|
|
552
|
-
| `cli.colors` | true | Color output |
|
|
553
|
-
| `cli.progressBars` | true | Show progress bars |
|
|
554
|
-
| `cli.prompt` | true | Prompt for missing info |
|
|
555
|
-
| `cli.quiet` | false | Suppress all output |
|
|
556
|
-
| `cli.rejectUnauthorized` | true | Reject bad SSL certs |
|
|
557
|
-
| `cli.width` | 100 | Text wrap width |
|
|
558
|
-
| `cli.failOnWrongSDK` | false | Fail on SDK mismatch |
|
|
559
|
-
| `cli.hideCharEncWarning` | false | Hide encoding warnings |
|
|
560
|
-
| `cli.httpProxyServer` | - | Proxy server URL |
|
|
561
|
-
|
|
562
|
-
### SDK options
|
|
563
|
-
|
|
564
|
-
| Option | Description |
|
|
565
|
-
| ---------------------------- | ---------------------------------- |
|
|
566
|
-
| `sdk.defaultInstallLocation` | SDK install location (OS-specific) |
|
|
567
|
-
| `sdk.selected` | Selected SDK version (required) |
|
|
568
|
-
|
|
569
|
-
### Paths
|
|
570
|
-
|
|
571
|
-
| Option | Description |
|
|
572
|
-
| ---------------- | ------------------------------ |
|
|
573
|
-
| `paths.commands` | Additional CLI command scripts |
|
|
574
|
-
| `paths.hooks` | CLI hook scripts |
|
|
575
|
-
| `paths.modules` | Module search paths |
|
|
576
|
-
| `paths.plugins` | Plugin search paths |
|
|
577
|
-
| `paths.sdks` | SDK search paths |
|
|
578
|
-
| `paths.xcode` | Xcode installation paths |
|
|
579
|
-
|
|
580
|
-
### Java options
|
|
581
|
-
|
|
582
|
-
| Option | Description |
|
|
583
|
-
| ---------------------------- | ------------------------- |
|
|
584
|
-
| `java.home` | JDK directory |
|
|
585
|
-
| `java.executables.java` | java executable path |
|
|
586
|
-
| `java.executables.javac` | javac executable path |
|
|
587
|
-
| `java.executables.jarsigner` | jarsigner executable path |
|
|
588
|
-
| `java.executables.keytool` | keytool executable path |
|
|
589
|
-
|
|
590
|
-
### Genymotion options
|
|
591
|
-
|
|
592
|
-
| Option | Description |
|
|
593
|
-
| ----------------------------------- | ----------------------------------------- |
|
|
594
|
-
| `genymotion.enabled` | Enable Genymotion support |
|
|
595
|
-
| `genymotion.home` | Genymotion virtual machine data directory |
|
|
596
|
-
| `genymotion.path` | Genymotion app directory |
|
|
597
|
-
| `genymotion.executables.genymotion` | genymotion executable |
|
|
598
|
-
| `genymotion.executables.player` | player executable |
|
|
599
|
-
| `genymotion.executables.vboxmanage` | vboxmanage executable |
|
|
600
|
-
|
|
601
|
-
### Application options
|
|
602
|
-
|
|
603
|
-
| Option | Description |
|
|
604
|
-
| --------------------------- | --------------------------- |
|
|
605
|
-
| `app.idprefix` | Prefix for new app IDs |
|
|
606
|
-
| `app.publisher` | Default publisher |
|
|
607
|
-
| `app.url` | Default company URL |
|
|
608
|
-
| `app.workspace` | Default workspace directory |
|
|
609
|
-
| `app.skipAppIdValidation` | Skip app ID validation |
|
|
610
|
-
| `app.skipVersionValidation` | Skip version validation |
|
|
611
|
-
|
|
612
|
-
---
|
|
613
|
-
|
|
614
|
-
## Common issues
|
|
615
|
-
|
|
616
|
-
### Android SDK not found
|
|
617
|
-
|
|
618
|
-
```bash
|
|
619
|
-
! sdk Android SDK not found
|
|
620
|
-
! targets no targets found
|
|
621
|
-
! avds no avds found
|
|
622
|
-
```
|
|
623
|
-
|
|
624
|
-
Solution:
|
|
625
|
-
```bash
|
|
626
|
-
ti config android.sdkPath /path/to/android-sdk
|
|
627
|
-
```
|
|
628
|
-
|
|
629
|
-
### Xcode too old
|
|
630
|
-
|
|
631
|
-
```bash
|
|
632
|
-
! Xcode 4.3 is too old and is no longer supported by Titanium SDK 3.3.0
|
|
633
|
-
```
|
|
634
|
-
|
|
635
|
-
Solution: install a newer Xcode from the Mac App Store.
|
|
636
|
-
|
|
637
|
-
### Clean build issues
|
|
638
|
-
|
|
639
|
-
```bash
|
|
640
|
-
ti clean -p ios
|
|
641
|
-
ti clean -p android
|
|
642
|
-
```
|
|
643
|
-
|
|
644
|
-
### ADB device issues
|
|
645
|
-
|
|
646
|
-
```bash
|
|
647
|
-
adb kill-server
|
|
648
|
-
adb start-server
|
|
649
|
-
adb devices
|
|
650
|
-
```
|
|
651
|
-
|
|
652
|
-
---
|
|
653
|
-
|
|
654
|
-
## Command quick reference
|
|
655
|
-
|
|
656
|
-
| Command | Description |
|
|
657
|
-
| ---------------------------- | -------------------------------------------------------------------------------------------- |
|
|
658
|
-
| `ti help` | Display help screen |
|
|
659
|
-
| `ti help <command>` | Display help for a specific command |
|
|
660
|
-
| `ti setup` | Run setup wizard |
|
|
661
|
-
| `ti setup check` | Check environment setup |
|
|
662
|
-
| `ti setup <section>` | Run specific setup section (quick, check, user, app, network, cli, sdk, ios, android, paths) |
|
|
663
|
-
| `ti info` | Display system info |
|
|
664
|
-
| `ti info -p <PLATFORM>` | Platform-specific info |
|
|
665
|
-
| `ti info -o json` | Output system info as JSON |
|
|
666
|
-
| `ti config` | Display/set config |
|
|
667
|
-
| `ti config -o json` | Output config as JSON |
|
|
668
|
-
| `ti create` | Create new project |
|
|
669
|
-
| `ti create -t module` | Create new module |
|
|
670
|
-
| `ti build` | Build project |
|
|
671
|
-
| `ti build -b` | Build only (no install/launch) |
|
|
672
|
-
| `ti build -f` | Force clean rebuild |
|
|
673
|
-
| `ti clean` | Clean build folder |
|
|
674
|
-
| `ti clean -p <PLATFORM>` | Clean specific platform |
|
|
675
|
-
| `ti project` | Get/set tiapp.xml settings |
|
|
676
|
-
| `ti module list` | List installed modules |
|
|
677
|
-
| `ti plugin list` | List installed plugins |
|
|
678
|
-
| `ti sdk list` | List installed SDKs |
|
|
679
|
-
| `ti sdk select` | Select default SDK |
|
|
680
|
-
| `ti sdk install` | Install latest SDK |
|
|
681
|
-
| `ti sdk install <version>` | Install specific SDK |
|
|
682
|
-
| `ti sdk uninstall <version>` | Uninstall specific SDK |
|
|
683
|
-
| `ti sdk update` | Check for SDK updates |
|
|
684
|
-
|
|
685
|
-
---
|
|
686
|
-
|
|
687
|
-
## SDK version precedence
|
|
688
|
-
|
|
689
|
-
1. `tiapp.xml` `<sdk-version>` tag
|
|
690
|
-
2. `--sdk` CLI option
|
|
691
|
-
3. `app.sdk` config setting
|
|
692
|
-
4. Selected SDK (`ti sdk select`)
|
|
693
|
-
|
|
694
|
-
---
|
|
695
|
-
|
|
696
|
-
## References
|
|
697
|
-
|
|
698
|
-
- Titanium CLI GitHub: https://github.com/tidev/titanium-cli
|
|
699
|
-
- Android SDK Manager: http://developer.android.com/sdk
|
|
700
|
-
- Xcode Downloads: https://apps.apple.com/us/app/xcode/id497799835?mt=12/
|