2014-06-10 279 views
0

我有一個問題,我在Delphi XE6中使用Firemonkey創建Android應用程序。該應用程序包含一個TWebBrowser和一個按鈕......沒有什麼奇特的。 我正在嘗試顯示位於我的SD卡上的xhtml文件。 我「認爲」我正在做所有正確的事情,如使用"TPath.GetHomePath"並將我的文件放在這個位置。 - 並確保在項目中設置權限。作爲一名經驗豐富的開發人員,我知道我需要使用「file://」,因此瀏覽器知道它是一個本地文件,因爲多年來我在Delphi中做了一百萬次,甚至檢查幫助文件它使用的例子"WebBrowser1.Navigate('file://MyFile.pdf')"路徑問題?

所以,我做我的構造URL:

AppPath := TPath.Combine(TPath.GetHomePath, 'myfile.xhtml'); 

我然後去:

WebBrowser1.Navigate('file://'+AppPath); 

當導航發生時,它告訴我該文件不存在,file:///data/data/com.embarcadero.WebBrowser/files/myfile.xhtml 我發現了3/ie的文件:///,並認爲我只是硬編碼的路徑成一個字符串,並得到同樣的問題,說該文件不存在,它恢復回來以file:///

任何人都可以看到我做錯了什麼?它讓我感到困惑,這是肯定的! :-)

謝謝,傑里米

回答

0

而不是

TPath.GetHomePath

我用

TPath.GetPublicPath

這導致我/storage/emulated/0/Android/data/<myapp>/files/文件夾(我需要的一個)。

TPath.GetHomePath

給我data/data/<myapp>/files/這是不存在的(我想,也許我需要像GetAbsolutePath)。