You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

LG webOS应用无法通过Android的DIAL协议启动:HTTP 201但应用仍停止

DIAL协议投送视频至LG webOS TV应用问题排查

开发Android应用时,通过DIAL协议向LG webOS TV应用投送视频,DIAL请求成功返回HTTP 201,但TV端应用始终无法启动;当应用已运行时,也无法触发webOSRelaunch事件。

环境配置

  • LG webOS TV(webOS 10.3,Chrome 120)
  • 应用通过ares-install在开发者模式下安装
  • Android端使用自定义FireTVCastPlugin发送DIAL POST请求

appinfo.json配置

{
  "id": "com.wisedv.wiseott",
  "type": "web",
  "dialAppName": "com.wisedv.wiseott",
  "handlesRelaunch": true,
  "keepAlive": true,
  "requiredPermissions": ["internet", "tv.dial", "application.operation"]
}

Android端发送请求

POST http://192.168.1.6:36866/apps/com.wisedv.wiseott
Body: videoUrl=https%3A%2F%2F...&title=Amigo&vodType=MOVIE

LG TV响应

HTTP 201 Created

DIAL服务器状态检查

GET http://192.168.1.6:36866/apps/com.wisedv.wiseott

<service xmlns="urn:dial-multiscreen-org:schemas:dial">
  <name>com.wisedv.wiseott</name>
  <options allowStop="true"/>
  <state>stopped</state>   ← 始终为停止状态,从未启动
</service>

手动用遥控器打开TV端应用时状态为运行,但通过DIAL无法启动。

LG TV应用代码(dial-handler.js)

// 监听重启事件——从未触发
window.addEventListener('webOSRelaunch', function(event) {
    console.log('Relaunch event received:', event.detail);
    // 这段代码从未执行
});

// PalmSystem.launchParams仅返回:
// { "storeCaller": "home" }
// 从未接收到视频参数

TV控制台日志(应用运行时,Android发送DIAL请求)

[DIAL Handler] Waiting for DIAL relaunch events... (0 received so far)
[DIAL Handler] PalmSystem.launchParams: { "storeCaller": "home" }
[DIAL Handler] Normal app launch (no video cast)

已尝试的解决方案

  • 在appinfo.json中设置handlesRelaunch: true
  • 同时监听webOSRelaunch事件和PalmSystem.onrelaunch
  • 检查window.location.search、window.location.hash和PalmSystem.launchParams
  • 设置keepAlive: true使应用驻留内存
  • 调用PalmSystem.activate()将应用带到前台

内容的提问来源于stack exchange,提问作者Niraj Paradva

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.11 12:12:33