There's a workaround that might be useful for some people - use the Shadowsocks app for Android TV. Because that app only accepts a JSON configuration file, you need to convert the Outline key to JSON.
- Take the following JSON file template:
{ "server":"YOUR-SERVER", "server_port":12345, "local_port":1080, "password":"YOUR-PASSWORD", "method":"chacha20-ietf-poly1305", "remarks": "Outline Server" }
- From the Outline key (
ss://...
), take the server name/IP and port and put them in place ofYOUR-SERVER
and 12345 (respectively). - Take the base64 part of the Outline key (everything after
ss://
and before@
) and decode it using a base64 decoder. - The resulting string is the method and password, separated by a colon (e.g.
chacha20-ietf-poly1305:56gsef6zr5
). Take the password and put it in place ofYOUR-PASSWORD
in the JSON file. If the method isn'tchacha20-ietf-poly1305
, update it in the JSON "method" field. - Install the Shadowsocks app for Android TV on your Android TV / Google TV device.
- Copy the JSON file to your device. If you don't have a way to do that, there are many file managers available for Android TV. If you already have Kodi installed, it has a built-in file manager in Settings, that can be used to copy from network shares as well.
- Open the Shadowsocks app on your device and select "Replace from file".
- If you get a "No application can handle this action" error, you also need to install a file manager that can handle selecting a file from the file system. Not all file managers can do this. On Chromecast with Google TV, I found that it works after installing this app.
- You should now be able to connect to your Outline server from the app.
References: Outline Linux docs, Shadowsocks configuration format.
The problem was in the incorrect json config. And good way fix it in sockshadow app. Or remove the quotation marks from the second part of the pair in json config.