2011-05-18 26 views
0

我偶然發現哪些文件被動態地由一個SWF文件加載需要找出(Java代碼中)。是否有可能獲得每個引用的對象的路徑列表? 我嘗試了一些沒有適當文檔的圖書館並放棄了。儘管我用完Google搜索短語...;) 也許有一種外部工具可以通過命令行由Java訪問?分析SWF檔案與Java

Ggreat由於事先

+0

所以,你要檢查_compiled_ SWF文件,對不對? – 2011-05-18 09:35:50

+0

是的,它用於自動網站分析,獲取關於頁面內使用的每個文件的信息。這些閃存背後的文件是最後缺失的部分。其餘的是由一些討厭的XSLT2代碼... – 2011-05-18 09:58:38

回答

0

我想,即使你可以分析一個SWF文件,你不能確定得到這個信息。我有Flex項目(最後是一個SWF文件),它動態加載一些模塊,但可用模塊的名稱(URL)從服務器請求。所以沒有機會從主swf文件中檢索這些信息。

+0

謝謝你的回答,但在我的情況下,只加載了一些XML文件,圖像和電影(據我看到它在Firebug中)。現在我「知道」在哪裏加載這些文件,但是應該自動檢測到任何更改。似乎谷歌有一些方法來索引Flash應用程序後面的文件......; – 2011-05-18 09:54:45

+0

@Kai AFAIK谷歌與Adobe有合作關係,他們有一個定製版的Flash Player,可以輕鬆抓取swf文件。這將有助於SWF文件的搜索引擎優化。 – 2011-05-18 10:01:23

1

也許你可以使用轉儲工具這是Apparat的一部分得到您需要的信息。

我使用的動作比Java更多,所以我也推薦看看AS3SWF這是一個很棒的庫,可以用來加載和分析你需要的swf。把它看作運行時的反編譯。

無論哪種方式,SWF Format Specifications會派上用場。

我不知道有什麼東西是不正是你想要什麼,但我想你可以通過他們收集所有的字符串(DefineText標籤),環路和對他們運行一個URL正則表達式。

+0

非常感謝!我會嘗試這個,當我再次得到時間... – 2011-05-20 11:30:29