Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在两个AdobeAIR窗口之间通信_Javascript_Air - Fatal编程技术网

Javascript 在两个AdobeAIR窗口之间通信

Javascript 在两个AdobeAIR窗口之间通信,javascript,air,Javascript,Air,我正在为一个希望在两个屏幕上显示游戏界面的客户构建一个AdobeAIR(HTML/JavaScript)应用程序。一个屏幕是用户与游戏本身交互的地方,另一个屏幕(显示在投影仪上)将向观众展示游戏屏幕2的内容与屏幕1不同,因此不属于镜像。 例如,一个宾果游戏,用户将单击屏幕1上的按钮拉出数字等,屏幕2将向正在玩游戏的观众显示数字网格和下一个拉出的数字。你可以想象,在一个大厅里,第一屏展示给舞台上的人,第二屏展示给大厅里的其他人。因此,屏幕2没有交互,只显示数据 我该怎么处理?因为我需要能够发送命令

我正在为一个希望在两个屏幕上显示游戏界面的客户构建一个AdobeAIR(HTML/JavaScript)应用程序。一个屏幕是用户与游戏本身交互的地方,另一个屏幕(显示在投影仪上)将向观众展示游戏屏幕2的内容与屏幕1不同,因此不属于镜像。

例如,一个宾果游戏,用户将单击屏幕1上的按钮拉出数字等,屏幕2将向正在玩游戏的观众显示数字网格和下一个拉出的数字。你可以想象,在一个大厅里,第一屏展示给舞台上的人,第二屏展示给大厅里的其他人。因此,屏幕2没有交互,只显示数据

我该怎么处理?因为我需要能够发送命令到其他窗口,使其显示数字,更新数字网格,等等

我考虑过做一些类似的事情:

projectorWindow.setWindowReference(air.NativeApplication.nativeApplication.openedWindows[1].stage.getChildAt(0).window);

projectorWindow.sendNumber( 88 );
但是有谁有更好的主意吗?现有的这样做的例子


第二个问题:

另外,为了让windows知道每个窗口都在谈论什么,我想我必须将完全相同的代码加载到每个窗口中,因此基本上加载一个HTML文件,如:
Bingo.HTML
,然后传递一个查询字符串,告诉它在什么模式下运行。。。e、 g.
Bingo.html?mode=用户
Bingo.html?mode=观众
听起来对吗?还是会有更好的方法

例如:

function loadGame(game) {

    mainWindow.load(new air.URLRequest(game + '.html?mode=user'));

    projectorWindow.load(new air.URLRequest(game + '.html?mode=audience'));         
}

还不确定如何根据查询字符串触发不同的UI元素。。。但这是使用AIR构建分屏游戏的最佳方式吗?或者我可以做得更好吗?

这两个air应用程序将在同一台机器上运行吗?你不能用本地连接吗?()。但它们不是两个应用程序。这是一个有两个窗口的应用程序。我不知道是否有一种方法可以在air和它的嵌入式html之间进行通信,但是如果你的air应用程序加载一个html(父html),并且父html将生成两个窗口,userWindow和audienceWindow,这难道不容易吗。我自己还没有尝试从air应用程序中生成一个新的html窗口,但从理论上讲,这两个窗口应该更容易沟通,而父窗口是中介。您还可以探索更现代的方法:。air应用程序上会有代码逻辑吗?还是它只是作为html应用程序的加载程序/外壳?我不完全理解你说的一个html生成两个窗口是什么意思,因为我确信这就是我已经拥有的。你能给我举个代码例子吗?谢谢