2008-08-07 4 views
11

서버에서 비디오 및 문서를 다운로드하는 AIR 응용 프로그램을 작성했습니다. 동영상은 애플리케이션 내부에서 재생되지만 사용자가 기본 애플리케이션에서 문서를 열 수 있기를 바랍니다.AIR/Flex로 로컬 파일 열기

사용자에게 응용 프로그램 저장 디렉터리에 저장된 로컬 파일에서 열기/다른 이름으로 저장하도록 요청하는 방법을 찾고 있습니다. FileReference + URLRequest 클래스를 사용해 보았지만 원격 URL이 필요하다는 예외가 발생합니다.

내 최후의 수단은 자신의 바탕 화면에 파일을 복사한다 :

답변

2

\ 유일한 방법 난 그냥 파일을 이동하고 사용자가 브라우저로를 통과하는 것이었다 말하지 않고 그것을 할 방법을 알아낼 수있다.

navigateToURL(new URLRequest(File.applicationStorageDirectory.nativePath + "/courses/" + fileName)); 
0

현재 adobe는 기본 응용 프로그램에서 파일 열기를 지원하지 않습니다. 그것을 브라우저에 전달하는 것이 브라우저를 작동시키는 유일한 방법 인 것 같습니다.

그러나 FileStream을 사용하여 iframe의 위치를 ​​파일로 설정하는 작은 javascript로 작은 html 파일을 작성한 다음 100ms가 지나면 window.close()를 호출 할 수 있습니다. 그런 다음 해당 파일을 브라우저에서 엽니 다.

2

이것은 FluorineFx Aperture 프레임 워크의 첫 번째 릴리스입니다.

프레임 워크는 AIR 데스크탑 응용 프로그램에 대한 기본 OS 통합 (Windows 만 해당)을 지원합니다.

프레임 워크는 Adobe AIR 응용 프로그램을 방해하지 않는 방식으로 확장합니다. 제공된 라이브러리를 AIR 응용 프로그램과 함께 재배포하면 런타임에 프레임 워크가 자동으로 응용 프로그램에 연결됩니다.

특징

  • 를 제공하여 AIR 응용 프로그램에서 제공 apimaging 라이브러리
  • 액세스 Outlook 연락처를 전체 화면의 스크린 샷을 가지고 제공된 apsystem 라이브러리

    • 시작 네이티브 응용 프로그램과 문서 apoutlook 라이브러리

    http://aperture.fluorinefx.com/

  • 12
    (나는 그것이 AIR 2에서만 사용 가능하다고 생각) 당신은 File 클래스에 가능한 새로운 openWithDefaultApplication(); 기능을 사용할 수 있습니다

    예 : 나를 위해

    var file:File = File.desktopDirectory.resolvePath(fileLocation); 
    file.openWithDefaultApplication(); 
    
    0

    그것의 :

    var request:URLRequest = new URLRequest(); 
    request.url = file.url; 
    navigateToURL(request, "_blank"); 
    

    경로 "/ users/mydirectory/..."가 application sandbox 외부에 있기 때문에 navigateToURL(file.nativePath)이 작동하지 않았습니다. AIR에서는 일부 프로토콜을 navigateToURL()으로 열 수 있습니다.