2010-07-15 58 views
1

我想知道是否有可能以編程方式驅動Flash應用程序,以便爲需要用戶交互的基於Web的基於Flash的應用程序提供某種自動化功能?天真的方法需要根據一些預定義的模式進行截圖並識別交互區域。然後,我們可以通過將Windows消息直接發送到瀏覽器來模擬鼠標點擊/鍵盤。是否可以通過編程方式驅動Flash應用程序?

我想知道是否有一個更簡單/更微妙的方式來實現這一點。

+0

您是否擁有對所述Flash應用程序的控制權?如果是這樣,您可以在Flash中使用ExternalInterface以允許來自Javascript的調用與Flash進行交互。 – Andir 2010-07-15 13:53:24

+0

如果你正在嘗試自動測試等,AutoHotKey(http://www.autohotkey.com/)可能值得一看(不是特定於Flash) – cryo 2010-07-15 13:53:51

+0

謝謝安迪爾,但不,我沒有控制應用程序。我正在考慮控制第三方應用程序。 – 2010-07-15 13:54:50

回答

1

您是否試圖在其他人的網站上玩遊戲或運行應用程序,這就是爲什麼您無法使用autohotkey程序?在這種情況下,您將不得不採取某種類型的屏幕截圖並進行像素分析,以瞭解屏幕上發生了什麼以及您想要如何處理這些數據。

Unfortunatley你將無法將數據從你不能控制的Flash應用程序中提取出來,除非你對其進行反向工程,並且這種可能性很小,並且可能是非法的。如果它是您的應用程序,那麼您可以簡單地將命令傳遞給與Flash應用程序後端進行交互的服務,但我猜不到。

+0

這正是我想要做的,就像你說的逆向工程不是真正合法的 - 所以我猜像素分析是我唯一的選擇, – 2010-07-22 15:19:53

1

您沒有想到Adobe Flex或Open Laszlo,是嗎?你會想到如何開發一個編程/算法控制的Flash應用程序嗎?

它們都是開源產品。

Laszlo首次提供免費的開源Flash Flash SDK。然後由Adobe自己開始採購他們的SDK。

您應該嘗試使用任一SDK。

使用Flex或Laszlo SDK,您可以開發具有恆定客戶端 - 服務器關係的應用程序,用戶可能被要求提供用戶輸入,例如按鈕或菜單上的鼠標或鍵盤點擊,並向服務器發送請求。服務器將能夠通過向異步客戶端發送更多數據,圖像和影片剪輯作出響應。

或者,客戶端應用程序可以製作成獨立(無服務器)Flash應用程序 - 以與客戶端 - 服務器模式相同的用戶輸入驅動方式運行。這種獨立的Flash應用程序可以從HTML頁面或Flash查看器中啓動。

開發Flash應用程序的樂趣之一是存在異步套接字。然而,隨着HTML 5的出現,Flash技術提供了類似的功能,Flash技術似乎已經過時了。

相關問題