2016-08-09 33 views
0

我開發了一個混合Web應用程序,並使用Appcelerator/Titanium SDK將其轉換爲本機移動應用程序。該代碼庫在iOS和Android上均可正常工作。但是,當我構建到Windows並在Windows Phone 8.1模擬器上運行它時,它不起作用。webview中的文件不會在Windows Phone上加載

我調試了這個問題,並發現它與主要的index.html文件(這是我加載到WebView中的本地文件)中沒有加載圖像和JavaScript文件有關。但是,我無法弄清楚如何解決這個問題。我是否需要爲Windows引用不同的文件?

編輯:一個基本的測試案例...創建一個簡單的應用程序,沒有額外的插件或模塊。

測試/資源/ app.js

var win = Ti.UI.createWindow({ 
    title: 'Testing' 
    }), 
    webview = Ti.UI.createWebView({ 
    url: 'app/index.html', 
    top: 0, 
    left: 0 
    }); 

win.add(webview); 
win.open(); 

測試/資源/應用/ index.html中

<html> 
<body> 
    <h1>Hello World!</h1> 
    <img src="test.png" /> 
</body> 
</html> 

掉落在任何圖像成test/Resources/app/test.png

在Windows Phone版本上,您將看到「Hello World」標題,但圖像不會加載。在iOS和Android版本上,一切都按預期工作(例如,圖像加載得很好)。這是Titanium SDK 5.3.1.GA和appcelerator CLI 5.3.1。

+0

你能分享一些未加載圖片的代碼嗎? – developer82

+0

是的,我很抱歉,我應該首先做到這一點。我編輯了我的問題以包含一個簡單的測試用例。 –

+0

您是使用合金還是經典應用? – developer82

回答

0

您可以用ms-appx-web:///爲圖像添加前綴,然後從Resources目錄中提供相對路徑。因此,在這種情況下,正確的img標籤將

ms-appx-web:///app/test.png 

然而,這並不在iOS和Android計算,所以你需要拿出使用的Windows和iOS/Android的不同圖像路徑的解決方案。

相關問題