2008-09-02 98 views

回答

2

看来这是不可能的。从documentation

只启动一个AIR应用程序的一个实例。当再次调用已经运行的应用程序时,AIR会将新的调用事件分派给正在运行的实例。

它还提供了一个可能的解决方法:

这是一个AIR的负责响应invoke事件并采取适当的动作(例如打开一个新的文档窗口)。

already a bug与此有关的错误追踪系统,但它打上给出没有明确的解决关闭...

2

不,不能。 AIR只允许在app.xml文件中定义的具有相同ID的任何应用程序的一个运行实例。

<application xmlns="http://ns.adobe.com/air/application/1.0"> 
<id>ApplicationID</id> 

要解决这一点,你要么必须为每个流分别创建ID'd的应用程序,或者创建拥有子窗口每个流的主应用程序。

0

我上次检查时,一个AIR应用程序只能运行一个实例。你可以打开多个窗口,但你的应用程序本身必须支持。我希望他们很快改变这一点。

2

否。AIR应用程序一次只能运行一个实例。如果您需要运行多个应用程序,解决方案是实例化一个应用程序,并在独立的本地窗口中应用程序视图(每个应用程序实例一个)。

它被标记为关闭的原因是因为它不被认为是一个错误,而是空气团队所做的设计/实现选择。

希望帮助...

迈克室

[email protected]

0

有充分的理由对这个设计,虽然它需要应用开发者遵循正确的OOP技术...在OS X中,您无法打开多个应用程序实例。相反,所有应用程序都需要正确处理多个文档。从用户的角度来看,这非常好,即使这意味着开发人员需要更多的工作。

+0

并非每个应用程序都以传统意义上的“文档”工作。有多个原因可以运行多个应用程序。 E.G.我试图通过运行两个实例并使用两个不同的用户登录来测试具有登录系统的应用程序。由于这种延迟限制,我无法做到这一点。 看起来我要使用虚拟机或其他东西。 – 2012-09-10 13:57:38

1

我写了一个实用程序,它允许您复制现有的AIR应用程序并排并行运行多个副本。每个副本都有自己的工作目录,因此设置和存储的数据应该是独立的。

您可以从GitHub上的应用程序和源代码:https://github.com/chrisdeely/AirAppDuplicator

联系我的Twitter上@chrisdeely有任何疑问

0

是的,它可以,但背景是在用户的不同记录的,所以它可能不是你的问题的答案。因此同一个AIR应用程序可以运行两个或更多实例,每个实例都以不同的登录用户身份运行

1

您可以在不同的文件夹中创建应用程序的副本,然后更改<id>元素在application.xml

举例来说,如果第一个应用程序有:

<id>ApplicationID</id> 

你可以改变第二种说法是:

<id>ApplicationID2</id> 
相关问题