2010-03-16 120 views
1

我在Adobe AIR中編寫本質上是瀏覽器的內容(ActionScript,而不是AJAX)。協議處理需要很多功能來實現。例如,iTunes處理itms協議;當您的朋友向您發送以「itms://」開頭的鏈接時,只要安裝它就會啓動iTunes。有沒有一種方法可以用這種方式編寫AIR應用程序(要求AIR 2會很好),它可以成爲協議的「處理程序」?AIR應用程序可以編程來處理URL協議嗎?

回答

0

是的。您可以使用URLLoader類以二進制形式下載數據(URLLoader.BINARY),然後根據需要對其進行解析。請參閱working with external data上的CS3文檔。

+1

你誤會了我;我正在尋找的是當用戶在瀏覽器中導航到URL之前啓動/調用AIR應用程序的方式,甚至在頁面加載之前。 如果您在瀏覽器的地址欄中輸入itms:// URL,它將打開/調用iTunes,因爲iTunes是itms協議的處理程序。這就是我想要的;爲我的AIR應用程序成爲協議的處理程序。 – Rezmason 2010-03-18 13:13:23

+1

然後,您真正需要的是在瀏覽器中添加對自定義協議的支持。有關詳細信息,請參見:http://www.codeproject.com/KB/IP/FirefoxProtocol.aspx。 – dirkgently 2010-03-18 14:25:19

+0

他了解瀏覽器的自定義協議。他想知道如何用空氣來處理它。例如,發送什麼數據,你從哪裏讀取數據等等。 – NKijak 2011-10-26 17:23:00

0

http://www.patrick-heinzelmann.de/labs/lastfm/

我不知道它究竟是如何工作的,我沒有看到一個方法來下載應用程序,所以我甚至無法測試它,但也許這將有助於...

+0

這真的很有趣......而且是描述性的。我大概可以使用這些信息來找到需要編輯的文件以允許這樣的事情。然後,我可以編寫我的AIR應用程序來查找和編輯這些文件。由於它是一個值得信賴的應用程序,這不應該是一個問題。 – Rezmason 2010-05-22 01:25:18

0

退房this page。我試圖找出同樣的事情,但我還沒有找到任何解決方案,只用空氣呢。似乎您可能需要一個自定義安裝程序來設置正確的註冊表項,並使用代理應用程序將輸入「洗」成正確的格式,然後使用正確的命令行參數啓動應用程序。希望這可以有任何幫助。

0

沒有辦法,編程方式說,具體處理特定的協議。但是,有InvokeEvent。當應用程序被「調用」時,InvokeEvent將被觸發,當它被明確啓動或者激活了關聯的文件或URL時。

將您的應用程序與特定文件類型或協議方案相關聯的過程是獨立的且取決於應用程序。例如,在iOS中,您需要在CFBundleURLTypes/CFBundleURLSchemes下的Info.plist中指定協議。

相關問題