2011-07-26 2 views
1

HTML/JS SDK를 사용하여 AIR 응용 프로그램을 작성합니다.Adobe AIR에는 원격 파일이 포함되지 않습니다!

내 웹 사이트와 동일한 폴더에있는 스크립트 및 스타일 시트를 포함 할 수 있지만 인터넷에서 가져온 원격 콘텐츠는 포함 할 수 없습니다. jquery도 google도 원격 스크립트가 없습니다 ... <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js">을 넣었지만 아무 일도 일어나지 않습니다! 이 파일뿐만 아니라 모든 파일의 경우입니다.

이 문제가 발생 했습니까? AIR 문서에서 그들은 우리에게 항상 매시업과 원격 포함을 보여 주지만 여전히 효과가 없습니다!

답변

2

AIR에서는이 작업을 확실히 수행 할 수 있지만 기본적으로 보안 제한 사항을 해결하려면로드 된 첫 번째 프레임에서이 작업을 수행 할 수 없습니다. 고맙게도 그렇게 어렵지 않습니다.

메인 HTML 페이지 (예 : index.html)에 iframe을 만들고 여기에 모든 콘텐츠를로드해야합니다. 그런 다음 기본 HTML 페이지가 향상된 보안 권한 (파일 시스템 등)이 필요한 메소드를 호출 할 수 있도록 컨트롤러의 역할을 수행하며 iframe에로드 된 모든 코드는 외부 미디어 및 스크립트를로드 할 수 있으며 JavaScript를 사용할 수 있습니다 평가 및 응용 프로그램의 메인 프레임에서 다른 방식으로 차단되는 다른 방법을 사용합니다.

는 현재 http://help.adobe.com/en_US/AIR/1.5/devappshtml/WS5b3ccc516d4fbf351e63e3d118666ade46-7f08.html#WS5b3ccc516d4fbf351e63e3d118666ade46-7f07

그것에 대해 읽고 당신이 개념을 이해하도록 전체 페이지를 읽고,하지만 sandboxRoot에서 특히주의를 지불하고 당신이 iframe 대응을 설정할 때 DocumentRoot에 속성 수 있습니다.

+0

괜찮 았지만 Air는 크롬없는 브라우저가되었습니다. – Cystack

+0

하단 프레임에서만. 기본 페이지 (index.html)에는 여전히 모든 향상된 보안 권한이 있으므로 파일 시스템, 데스크탑 및 데이터 작업과 같이 일반적인 웹 브라우저 환경에서는 수행 할 수없는 작업을 수행 할 수 있습니다. parentSandboxBridge (내 대답의 링크 참조)를 사용하면 이러한 종류의 메소드를 하위 프레임의 페이지에 표시 할 수 있습니다. 두 세계 모두에서 가장 좋습니다 :) – sidogg

+0

NativeProcess 클래스를 사용하면 외부 응용 프로그램을 호출 할 수 있으며, 원하는 다른 작업을 수행 할 수 있으며 원본 AIR 응용 프로그램과 쉽게 통신 할 수 있습니다. – sidogg

관련 문제