问题标签 [broadcast]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1428 浏览

flash - AS3 中的自定义广播事件?

在 Actionscript 3 中,大多数事件使用现在非常流行的捕获/目标/气泡模型:

当一个事件发生时,它会经过事件流的三个阶段:捕获阶段,它从显示列表层次结构的顶部流向目标节点之前的节点;目标阶段,包括目标节点;以及从目标节点之后的节点流出的冒泡阶段支持显示列表层次结构。

但是,某些事件,例如 Sprite 类的enterFrame事件,不会捕获 OR 气泡 - 您必须直接订阅目标才能检测事件。文档将这些称为“广播事件”。我认为这是出于性能原因,因为舞台上的每个精灵都会不断触发这些事件,并且您不想处理所有多余的事件传播。

我想发送我自己的广播事件。我知道您可以防止事件冒泡(Event.bubbles = false),但是您也可以摆脱捕获吗?

0 投票
1 回答
878 浏览

networking - Windows 上的 SNMP 广播

我正在 Windows 中编写一个 SNMP 代理。代理响应简单的 get 和 get-next 请求,直接发送到计算机的 IP 地址。但是当我进行 SNMP 广播时,计算机会接收到数据包但不响应。这是为什么?防火墙已关闭,防病毒软件也已关闭。

0 投票
3 回答
6672 浏览

android - Android 中的 ACTION_HEADSET_PLUG 广播问题

我试过这些手机:摩托罗拉 Backflip 1.5、Nexus One 2.1

基本上我注册 BroadcastReceiver 以获得 ACTION_HEADSET_PLUG 广播并查看 3 个额外的意图:

  • 状态
  • 姓名
  • 麦克风

以下是 API 的描述:

问题#1:广播在活动开始(非预期)、屏幕旋转发生(非预期)以及耳机/耳机插入/拔出(预期)时出现。

问题 #2:后空翻手机 (1.5) 为状态 + 麦克风发送 null,当耳机/耳机拔出时发送“无设备”作为名称,并为状态 + 麦克风发送 null,“立体声耳机”/“立体声耳机”作为耳机/时的名称耳机插上。

更新:T-Mobile G1 与 1.6 的行为与 Backflip 手机相同。

Nexus 更糟糕的是,它总是为状态 + 麦克风发送 null,当耳机/耳机插入或拔出时,“耳机”作为名称。

问题:如何解释 API 在 1.5 和 2.1 版本以及不同的设备和制造商上都被破坏了这么多?

更新:

主Activity的onCreate中的代码:

现在广播接收器的代码:

}

0 投票
2 回答
465 浏览

c# - 在 C# 中创建一个受到严格限制的服务器发现应用程序

我写信给你是因为我需要解决一个新问题,而我现在已经把头撞在墙上太久了。

基本上,我需要创建一个可以处理以下内容的应用程序:

用户启动一个应用程序,该应用程序向子网发送广播,并收到那里所有服务器的响应及其 IP(以及一些附加信息)。然后用户可以选择他想要连接的服务器。

让它工作很简单,识别子网,使用 UDP 广播,然后让不同的服务器应用程序接收它并发送回响应。问题在于这些限制,我需要考虑:

  • 网络中的服务器机器上很可能还有客户端,这意味着我们可以假设应用程序存在于所有机器上。每台机器都需要运行监听器,每台机器都可以启动 GUI 来选择服务器。
  • 我只被允许向防火墙添加一个例外 - 一个处理发送广播、接收广播、发送答案和接收答案的例外。
  • 我也应该只添加一个 Windows 服务
  • 在服务器机器上,侦听器应该作为 Windows 服务运行,因此用户不会注意到它。用户也不会注意到响应被发送回客户端。
  • 在客户端机器上,用户可以启动一个应用程序,该应用程序将通知应用程序发出广播,并获得所有服务器响应,因此用户可以选择一个连接。
  • 除了用户为了选择服务器而启动的应用程序之外,不应该与用户进行任何交互。甚至没有弹出窗口,要求用户允许流量通过防火墙 - 它应该都是自动的
  • 它需要在 Win XP、Win Vista 和 Win 7 之间运行。

不知道是不是对自己施加了太多的约束,但我真的希望自己能带着这些要求去申请。

我有一些想法 - 我只需要弄清楚如何去做:

  • 我应该把所有东西都放在一个应用程序中,然后添加到防火墙例外列表中,这样它就可以处理服务器和客户端机器上的流量了吗?
  • 我是否应该向防火墙添加自定义例外,允许特定端口上的 UDP 流量,然后让所有流量通过该端口?
  • 是否有第三种更好的选择来管理它?
  • 可以在客户端和服务器机器上运行该服务。但它可以为我处理所有事情吗——比如它同时处理广播发送/接收和应答发送/接收?有没有办法从服务中提取有关网络上服务器的信息?

我知道这很多,但我真的希望你能帮助我。

如果我不够清楚,或者您需要进一步的解释,请告诉我。

我正在使用 C# .Net 进行编码,我可以利用 .Net 框架中的所有内容。一旦我实现了这个功能

一切顺利

/萨吉

0 投票
1 回答
2138 浏览

sockets - 使用数据包套接字接收广播数据包

我尝试向网络发送 DHCP RENEW 数据包并接收响应。我广播了数据包,我可以看到它已使用 Wireshark 成功发送。但是我很难接收响应。我使用数据包套接字来捕获数据包。我可以看到使用 Wireshark 对我的 RENEW 数据包有响应,但我的函数“packet_receive_renew”有时会捕获数据包,但有时它无法捕获数据包。我使用 FDSET 设置文件描述符,但我的代码中的“选择”无法意识到该文件描述符有新数据包并且发生超时。我不清楚为什么它有时会捕获数据包而有时不会。有人有想法吗?提前致谢。

这是接收功能。

0 投票
1 回答
513 浏览

.net - 是否可以抑制广播数据包的环回?

我有一个 .NET 程序可以“监听”并在同一个端口上广播。所以,当它广播数据包时,这些数据包会循环回我的程序,我希望它不会发生。

有没有办法阻止广播环回?

0 投票
0 回答
574 浏览

ruby - 如何使用 Ruby 的 net-mdns 广播主机名?

一般来说,我是 net-mdns 和 mDNS 的新手,所以我现在对协议的工作原理只有一个基本的了解,我希望这个问题是不言自明的。

到目前为止,我已经看到了一些如何使用 net-mdns 宣传服务的示例,但我真正需要的是广播主机名别名,以便我的机器可以解析为“mybox.local”和“othername.local” (如果“othername.local”是一个实际的 DNS 别名就好了,但这并不重要,一个 A 记录就可以了)。

我发现这个脚本基本上可以满足我的需求,但是

  • 我在 Python 中的流利程度不如在 Ruby 中的流利 ;-)
  • 它依赖于 avahi 并且只能在 Linux 或 BSD 上运行,而可移植到其他平台将是一个巨大的优势
  • 在 Ruby 中做这意味着很容易将它插入到 Rails 应用程序中,而且我碰巧对 Rails 非常流利。;-)

我似乎在文档中找不到任何关于广播主机名的提及:我即兴创作了一点,阅读了一些源代码,但到目前为止还没有成功。

任何帮助将不胜感激,谢谢。

0 投票
3 回答
909 浏览

c - execl 在服务器端的 while(1) 循环中不起作用;C 脚本

我有一个小 C 脚本的问题,它应该作为服务器运行并为每条到达的消息启动一个弹出窗口。execl语法是正确的,因为如果我尝试一个小脚本

有用。

当我将它放入 while(1) 循环时,它不起作用。其他一切都在工作,比如printf或字符串操作,但不是execl. 即使我叉它也不起作用。我怎样才能让它工作?

我已经尝试过fork(),但它也不起作用。

这是完整的服务器 C 代码。

0 投票
1 回答
7322 浏览

android - 可以以编程方式设置 BroadcastReceiver 优先级吗?

是否可以通过编程方式设置 BroadcastReceiver 的优先级属性,还是只能在 XML 中完成?相关文件包括:

http://developer.android.com/reference/android/content/BroadcastReceiver.html

http://developer.android.com/reference/android/R.styleable.html

似乎并非如此,但我并不完全理解 android.R.styleable 与给定应用程序及其活动的关系......

0 投票
2 回答
1732 浏览

c - 如何使用 UDP 广播消息知道远程主机的 IP 地址?

我正在开发一个嵌入式系统,并且对这个 TCP\IP 非常陌生。我的问题是,一旦我在本地网络中安装了我的板并且该板将动态获取其 IP 地址,它必须与在网络中的一台 PC(DHCP 服务器除外)上运行的客户端应用程序通信。要与这个新板通信,客户端应用程序需要知道板的 IP 地址。有什么办法知道板子的IP地址?UDP 广播会为此目的工作吗?如果是,请详细解释,因为我无法理解。如果可能,请提供一些 C 语言示例代码。