gpt4 book ai didi

android - 用于 Android O/S 索尼电视上 DIAL 的应用程序名称

转载 作者:行者123 更新时间:2023-11-29 17:16:01 25 4
gpt4 key购买 nike

正在尝试在 Sony Bravia TV (Android) 上进行 DIAL 发现和启动。注意:不是尝试执行 Google Cast...而是尝试使用 DIAL 来发现并启动已安装的应用程序。 UDP 发现 SEARCH 给了我这个。

HTTP/1.1 200 OK
CACHE-CONTROL: max-age=1800
DATE: Mon, 15 Aug 2016 19:09:52 GMT
EXT:
LOCATION: http: // 10.180.12.183:8008 /ssdp/device-desc.xml
OPT: "http://schemas.upnp.org/upnp/1/0/"; ns=01
01-NLS: 4185dfde-1dd2-11b2-845e-c7225b044ee1
SERVER: Linux/3.10.27, UPnP/1.0, Portable SDK for UPnP devices/1.6.18
X-User-Agent: redsonic
ST: urn:dial-multiscreen-org:service:dial:1
USN: uuid:25664941-9d79-be82-aab6-39c4cdda7052::urn:dial-multiscreen-org:service:dial:1
BOOTID.UPNP.ORG: 0
CONFIGID.UPNP.ORG: 1869286273

检索位置 http://10.180.12.183:8008/ssdp/device-desc.xml 给我这个标题:

Application-Url: http: // 10.180.12.183:8008 /apps/
Content-Length: 1081
Content-Type: application/xml

该响应的内容是这样的:

<?xml version="1.0"?>
<root xmlns="urn:schemas-upnp-org:device-1-0">
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<URLBase>http: // 10.180.12.183:8008 </URLBase>
<device>
<deviceType>urn:dial-multiscreen-org:device:dial:1</deviceType>
<friendlyName>MySonyTv</friendlyName>
<manufacturer>Sony</manufacturer>
<modelName>BRAVIA 4K 2015</modelName>
<UDN>uuid:25664941-9d79-be82-aab6-39c4cdda7052</UDN>
<iconList>
<icon>
<mimetype>image/png</mimetype>
<width>98</width>
<height>55</height>
<depth>32</depth>
<url>/setup/icon.png</url>
</icon>
</iconList>
<serviceList>
<service>
<serviceType>urn:dial-multiscreen-org:service:dial:1</serviceType>
<serviceId>urn:dial-multiscreen-org:serviceId:dial</serviceId>
<controlURL>/ssdp/notfound</controlURL>
<eventSubURL>/ssdp/notfound</eventSubURL>
<SCPDURL>http: // www .google.com/ cast</SCPDURL>
</service>
</serviceList>
</device>
</root>

根据 DIAL REST 服务的 DIAL 协议(protocol)规则,我应该使用此获取有关我的应用程序的信息:

http: // 10.180.12.183:8008 /apps/MyAppName

但我收到“404:未找到”和空文本响应。如果我将“YouTube”或“Netflix”作为后缀而不是 MyAppName,我会得到一个有意义的 XML 响应。

一旦我对标准 DIAL REST GET 查询获得良好响应,我希望对相同的 URL 执行 DIAL REST POST 以启动我的应用程序——就像我能够对其他设备执行的操作一样支持拨号。

我的问题(希望索尼人员或索尼开发专家熟悉基于索尼 Android 的电视上的 DIAL。我不需要关于客户端发现/启动的一般 DIAL 教程,也不需要知道如何编写 DIAL 服务器,如果需要的话我决定这样做):

  1. 索尼基于 Android 的电视是否真的支持 DIAL(不仅仅是 Google Cast V2 或 V3)?如果是这样,我在电视上的 Android 应用程序中的哪个属性代表我应该在 DIAL REST 后缀中使用的应用程序名称?

  2. 我是否需要在我的电视应用程序的 AndroidManifest.xml 中添加一些额外的条目,或者可能还需要一个额外的资源(类似于 Amazon Fire TV 需要 xml/whisperplay.xml 资源,其中包含一个 xml 条目“dial/application/dialid”,Fire DIAL 服务器用于发现/启动)?

  3. 关于 DIAL 服务器的索尼基于 Android 的电视实现的独特方面,您还有什么可以告诉我的吗?

注意:记住...对 Google Cast 不感兴趣 -- 我需要启动一个应用,而不仅仅是转换标准视频。此外,很高兴使用 Sony 可能提供的专有发现/启动机制......但我需要知道该机制是如何工作的,所以如果这是解决方案,我将不胜感激。

最佳答案

我有一辆 2015 年的 Bravia,这是我格式化 url 的方式:

http://192.168.1.100/DIAL/apps/com.sony.dtv.com.alexvas.dvr.pro.com.alexvas.dvr.activity.TvMainActivity

我不知道为什么需要 com.sony.dtv,但 url 的其余部分由应用程序 ID(在本例中为 com.alexvas.dvr.pro)后跟应用程序内的 Activity 组成想要启动 (com.alexvas.dvr.activity.TvMainActivity)

在端口 80 上发布到该 URL 会启动我的应用。

关于android - 用于 Android O/S 索尼电视上 DIAL 的应用程序名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38982180/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com