2011-05-26 61 views
0

我試圖將現有的Web應用程序(僅ActionScript 3項目)移植到AIR,以作爲獨立應用程序運行。其功能之一是在瀏覽器窗口中打開網址。但調用navigateToURL(new URLRequest(url))拋出這個的SecurityError:AIR應用程序:navigateToURL拋出SecurityError#2193

SecurityError: Error #2193: Security sandbox violation: navigateToURL: app:/AIRDigE.swf cannot access http://www.youtube.com/watch?v=xCPwAr0xnGE . at global/flash.net::navigateToURL()

從Flash Builder 4

運行谷歌搜索時並沒有真正幫助我與此特定錯誤編號。

Adobe's reference on Security Sandboxes指出任何運行有Security.sandboxType==Security.APPLICATION(我的應用程序使用)的AIR應用程序都應該能夠連接到任何域,但顯然這不包括我。

任何想法?

謝謝,弗蘭克

+0

您使用的是什麼版本的Flex SDK? – 2011-05-26 19:54:25

+0

我正在使用Flex SDK 4.1。這可能會有所作爲嗎? – frankhermes 2011-05-26 20:16:23

+1

我不這麼認爲,如果您使用測試版或預覽版,我會問。老實說,我在這兩個Flash CS5和Flash Builder工作得很好。難住這個,除非你修改了你的安裝或其他東西。 – 2011-05-26 20:20:28

回答

2

對不起鄉親,今天早上我發現自己的答案:我傳入的URL URLRequest在它前面有一個的空間(它是從一個顯然產生錯誤URL的XML feed中加載的)。

因此,似乎與一個無效協議的網址導致該錯誤,並把trim()周圍的URL固定它。

0

嘗試使用的URLRequest用的navigateToUrl

navigateToURL(new URLRequest("http://www.youtube.com")); 

更新:

navigateToURL(new URLRequest("http://www.youtube.com"),"blank"); 
+0

這就是我正在做的。 'navigateToURL(new URLRequest(url));' – frankhermes 2011-05-26 14:36:05

+0

你可以在navigateToURL中使用「blank」參數嗎? – Satish 2011-05-26 14:42:24

+0

也嘗試過。同樣的錯誤。 – frankhermes 2011-05-26 14:44:45

1

我正在因爲網絡鏈路採用雙反斜線像這種錯誤的「http:\\ www.youtube.com」

在哪裏,我應該使用「http:* // * www.youtube.com「