2012-02-02 1 views
0

Windows Phone에서 WebBrowser 컨트롤을 사용하여 JavaScript 호출을 호출하고 있습니다. 지금은 코드를 온라인으로 참조 할 때 코드가 올바르게 작동합니다. 그러나, 내가 그것을 로컬로 참조 할 때, 그것은 깨진다.WebInvoke (WP7.5, Silverlight) 용 html 파일에서 javascript src를 어떻게 설정합니까?

내가 WP7 앱을 설치하는 방법과 격리 된 저장 장치와 관련이 있다고 생각하지만 다른 사람에게 맡기고 싶습니다.

HTML 파일에는 다음이 포함됩니다 내가 로컬 파일을 참조 할 수있는 방법을

<script type="text/javascript" src="http://mysite.com/myJavascript.js"></script>' 

그리고 생각을 할 때

<script type="text/javascript" src="scripts/myJavascript.js"></script> 

가 잘 작동? 콘텐츠 및 복사 항상 설정했습니다.

결국 실제 파일은 http://closure-library.googlecode.com/svn/trunk/closure/goog/base.js 오프라인으로 작업해야 내 사용자가 내 앱을 사용하기 위해 인터넷 연결이 필요하지 않습니다.

감사합니다.

답변

1

로컬 저장소에 파일을로드하는 데 사용하는 코드가 표시되지 않았지만 사용자의 접근 방식에 문제가있는 것을 즉시 확인할 수 없습니다. PhoneGap의 소스 코드를 보면서 WebBrowser에서 렌더링을 위해 격리 된 저장소에 여러 파일을로드하는 방법을 살펴 보는 것이 좋습니다. 여기에 폰갭 코드의 관련 opart은 다음과 같습니다

fileResourceStreamInfo = Application.GetResourceStream(new Uri(file.path, UriKind.Relative)); 

if (fileResourceStreamInfo != null) 
{ 
    using (BinaryReader br = new BinaryReader(fileResourceStreamInfo.Stream)) 
    { 
     byte[] data = br.ReadBytes((int)fileResourceStreamInfo.Stream.Length); 

     string strBaseDir = AppRoot + file.path.Substring(0, file.path.LastIndexOf(System.IO.Path.DirectorySeparatorChar)); 

     if(!appStorage.DirectoryExists(strBaseDir)) 
     { 
      //Debug.WriteLine("Creating Directory :: " + strBaseDir); 
      appStorage.CreateDirectory(strBaseDir); 
     } 

     // This will truncate/overwrite an existing file, or 
     using (IsolatedStorageFileStream outFile = appStorage.OpenFile(AppRoot + file.path, FileMode.Create)) 
     { 
      Debug.WriteLine("Writing data for " + AppRoot + file.path + " and length = " + data.Length); 
      using (var writer = new BinaryWriter(outFile)) 
      { 
       writer.Write(data); 
      } 
     } 
    } 
} 
+0

소스가 무엇을 해야할지 암시하는 데 도움이되지는 않았지만 이것이 정확히 그랬습니다. 이 작업을 올바르게 수행하려면 파일을 앱 설치에서 분리 된 저장소로 복사해야합니다. 감사! – Dave

1

콜린이 말하기를, 상대 경로가 로컬에로드 된 HTML 파일의 모든 파일이 처음 격리 된 저장소에 복사하고 거기에서로드해야합니다에서 작동하기 위해.

관련 문제