0

[tvOS] Add instructions for building and running a content shell on Apple tvOS

This CL adds documentation on how to build the content shell for Apple
tvOS and how to launch it on the simulator. Most of the environment
setup steps are shared with iOS, so the instructions have been added to
the existing iOS build guide.

Co-authored with Raphael Kubo da Costa <kubo@igalia.com>

Bug: 391914246
Change-Id: Ica509667908f8ba707e91e406d1dc6ef3f1fad55
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6572972
Reviewed-by: Dave Tapuska <dtapuska@chromium.org>
Reviewed-by: Rohit Rao <rohitrao@chromium.org>
Commit-Queue: Gyuyoung Kim <gyuyoung@igalia.com>
Cr-Commit-Position: refs/heads/main@{#1464370}
This commit is contained in:
Gyuyoung Kim
2025-05-22 14:38:45 -07:00
committed by Chromium LUCI CQ
parent bb408a0625
commit 03bcb25623

@ -313,6 +313,40 @@ most useful.
$ autoninja -C out/Debug-iphonesimulator content_shell
```
## Blink for tvOS builds and running
Blink for tvOS is an experimental project that aims to port Blink to Apple tvOS.
Due to platform limitations, specifically because tvOS does not support
multi-process applications, Blink for tvOS runs in a single-process mode only.
As a result, there is no security isolation, since all content runs within the
same process. Therefore, it is intended solely for loading trusted content.
Please note that this project is still under development and considered
unstable.
If you use the `setup-gn.py` script as described above, it will automatically
create `out/${configuration}-appletvsimulator` and
`out/${configuration}-appletvos` directories with the appropriate GN arguments.
If you would like to set your build up manually, the following GN arguments are
required:
```
target_os="ios"
target_platform="tvos"
use_blink=true
```
Currently, tvOS supports only a limited set of targets, with `content_shell`
being the most useful one. Note that `chrome` is not a supported target.
The `iossim` tool also supports tvOS via the `-x tvos` argument. You can run a
debug build of `content_shell`:
```shell
$ out/Debug-appletvsimulator/iossim -d 'Apple TV' -s '18.4' -x tvos \
out/Debug-appletvsimulator/content_shell.app
```
## Running apps from the command line
Any target that is built and runs on the bots (see [below](#Troubleshooting))