同一个Adobe AIR应用程序可以运行多次吗?

时间:2022-06-05 01:23:16

As the title says, is there a way to run the same Adobe AIR app more than once? I have a little widget I wrote that shows thumbnails from a couple of photo streams, and I'd like to fix it so I can look at more than one stream at a time. Thanks!

正如标题所说,有没有办法不止一次运行相同的Adobe AIR应用程序?我写了一个小窗口小部件,显示来自几个照片流的缩略图,我想修复它,这样我就可以一次查看多个流。谢谢!

8 个解决方案

#1


2  

It seems that this is not possible. From the documentation:

看来这是不可能的。从文档:

Only one instance of an AIR application is started. When an already running application is invoked again, AIR dispatches a new invoke event to the running instance.

仅启动AIR应用程序的一个实例。当再次调用已在运行的应用程序时,AIR会将新的调用事件调度到正在运行的实例。

It also gives a possible workaround:

它还提供了一种可行的解决方法:

It is the responsibility of an AIR to respond to an invoke event and take the appropriate action (such as opening a new document window).

AIR负责响应调用事件并采取适当的操作(例如打开新的文档窗口)。

There is already a bug related to this on the bugtracker, but it is marked closed with no explicit resolution given...

在bugtracker上已经存在与此相关的错误,但它被标记为已关闭,没有给出明确的解决方案......

#2


2  

No, it can't. AIR only allows one running instance of any app with the same ID defined in the app.xml file.

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

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

To work around this you'll either have to create individually ID'd apps for each stream, or create a master app with child windows for each stream.

要解决此问题,您必须为每个流创建单独的ID'd应用程序,或者为每个流创建一个带有子窗口的主应用程序。

#3


2  

No. AIR applications can only have one instance running at a time. If you need multiple apps running, the solution is to instantiate one app, with the app view in a separate native window (one for each "app instance").

不可以.AIR应用程序一次只能运行一个实例。如果您需要运行多个应用程序,解决方案是实例化一个应用程序,将应用程序视图放在单独的本机窗口中(每个“应用程序实例”一个)。

The reason it is marked closed is because it is not considered a bug, ut rather a design / implimentation choice made by the air team.

它被标记为关闭的原因是因为它不被认为是一个错误,而是由空中团队做出的设计/改造选择。

Hope that helps...

希望有帮助......

mike chambers

mesh@adobe.com

#4


1  

I have written a utility that will allow you to copy an existing AIR application and run multiple copies side by side. Each copy will have its own working directories, so the settings and stored data should be independent.

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

You can download the application and source code from GitHub: https://github.com/chrisdeely/AirAppDuplicator

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

Contact me on Twitter @chrisdeely with any questions

如有任何问题,请在Twitter @chrisdeely上与我联系

#5


1  

You can create a copy of the app in a different folder, then change the <id> element in the application.xml

您可以在其他文件夹中创建应用程序的副本,然后更改application.xml中的 元素

For instance, if the first application has:

例如,如果第一个应用程序具有:

<id>ApplicationID</id>

You can alter the second instance to say:

您可以更改第二个实例来说:

<id>ApplicationID2</id>

#6


0  

Last time I checked, an AIR app can only run a single instance. You could open multiple windows, but your app itself would have to support that. I hope they change this soon.

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

#7


0  

There are good reasons for this design, although it requires application developers to follow proper OOP techniques... In OS X, you can't have multiple instances of an app open. Instead, all applications are expected to handle multiple documents properly. This is very nice from the user's perspective, even if it means more work for developers.

这种设计有充分的理由,尽管它要求应用程序开发人员遵循适当的OOP技术......在OS X中,您不能打开多个应用程序实例。相反,所有应用程序都应该正确处理多个文档。从用户的角度来看,这是非常好的,即使这对开发人员来说意味着更多的工作。

#8


0  

Yes it can, but the context is on different logged in user, so it may not be the answer to your problem. So the same AIR app can run two or more instances, each on different logged in user.

是的它可以,但上下文是在不同的登录用户,所以它可能不是你的问题的答案。因此,相同的AIR应用程序可以运行两个或更多实例,每个实例位于不同的登录用户。

#1


2  

It seems that this is not possible. From the documentation:

看来这是不可能的。从文档:

Only one instance of an AIR application is started. When an already running application is invoked again, AIR dispatches a new invoke event to the running instance.

仅启动AIR应用程序的一个实例。当再次调用已在运行的应用程序时,AIR会将新的调用事件调度到正在运行的实例。

It also gives a possible workaround:

它还提供了一种可行的解决方法:

It is the responsibility of an AIR to respond to an invoke event and take the appropriate action (such as opening a new document window).

AIR负责响应调用事件并采取适当的操作(例如打开新的文档窗口)。

There is already a bug related to this on the bugtracker, but it is marked closed with no explicit resolution given...

在bugtracker上已经存在与此相关的错误,但它被标记为已关闭,没有给出明确的解决方案......

#2


2  

No, it can't. AIR only allows one running instance of any app with the same ID defined in the app.xml file.

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

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

To work around this you'll either have to create individually ID'd apps for each stream, or create a master app with child windows for each stream.

要解决此问题,您必须为每个流创建单独的ID'd应用程序,或者为每个流创建一个带有子窗口的主应用程序。

#3


2  

No. AIR applications can only have one instance running at a time. If you need multiple apps running, the solution is to instantiate one app, with the app view in a separate native window (one for each "app instance").

不可以.AIR应用程序一次只能运行一个实例。如果您需要运行多个应用程序,解决方案是实例化一个应用程序,将应用程序视图放在单独的本机窗口中(每个“应用程序实例”一个)。

The reason it is marked closed is because it is not considered a bug, ut rather a design / implimentation choice made by the air team.

它被标记为关闭的原因是因为它不被认为是一个错误,而是由空中团队做出的设计/改造选择。

Hope that helps...

希望有帮助......

mike chambers

mesh@adobe.com

#4


1  

I have written a utility that will allow you to copy an existing AIR application and run multiple copies side by side. Each copy will have its own working directories, so the settings and stored data should be independent.

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

You can download the application and source code from GitHub: https://github.com/chrisdeely/AirAppDuplicator

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

Contact me on Twitter @chrisdeely with any questions

如有任何问题,请在Twitter @chrisdeely上与我联系

#5


1  

You can create a copy of the app in a different folder, then change the <id> element in the application.xml

您可以在其他文件夹中创建应用程序的副本,然后更改application.xml中的 元素

For instance, if the first application has:

例如,如果第一个应用程序具有:

<id>ApplicationID</id>

You can alter the second instance to say:

您可以更改第二个实例来说:

<id>ApplicationID2</id>

#6


0  

Last time I checked, an AIR app can only run a single instance. You could open multiple windows, but your app itself would have to support that. I hope they change this soon.

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

#7


0  

There are good reasons for this design, although it requires application developers to follow proper OOP techniques... In OS X, you can't have multiple instances of an app open. Instead, all applications are expected to handle multiple documents properly. This is very nice from the user's perspective, even if it means more work for developers.

这种设计有充分的理由,尽管它要求应用程序开发人员遵循适当的OOP技术......在OS X中,您不能打开多个应用程序实例。相反,所有应用程序都应该正确处理多个文档。从用户的角度来看,这是非常好的,即使这对开发人员来说意味着更多的工作。

#8


0  

Yes it can, but the context is on different logged in user, so it may not be the answer to your problem. So the same AIR app can run two or more instances, each on different logged in user.

是的它可以,但上下文是在不同的登录用户,所以它可能不是你的问题的答案。因此,相同的AIR应用程序可以运行两个或更多实例,每个实例位于不同的登录用户。