2014-01-23 131 views
1

我有這樣的代碼:Ti.Media.Android.scanMediaFiles的絕對路徑

var imgPath = 'file:///sdcard/MyMobileProject/Images/Resize/'; 
var imgDir = Titanium.Filesystem.getFile(imgPath); 

if (!imgDir.exists()){ 
    imgDir.createDirectory(); 
} 

var f = Titanium.Filesystem.getFile(imgPath, filename); 
f.write(image); 

Titanium.Media.Android.scanMediaFiles([f.nativePath], ["image/jpeg"]); 

當我嘗試做一個mediaScan使用相對路徑,例如:

var imgPath = Titanium.Filesystem.externalStorageDirectory + '/Resize/'; 

它完美,而是在我將路徑改爲絕對路徑後,它不會對我有用。設備在絕對路徑上創建新文件,但我的Windows資源管理器找不到該文件,因爲scanMediaFiles函數在這種情況下不起作用..

有誰知道如何做一個絕對路徑scanMediaFiles?所以我可以通過我的應用程序從Windows資源管理器創建的圖像..謝謝..

+0

@Frans:你得到了解決? – GaneshKumar

回答

1

你幾乎沒有@Frans ..

你必須只是你的目錄路徑轉換爲絕對路徑..

,而不是這個..

var imgPath = Titanium.Filesystem.externalStorageDirectory + '/Resize/'; 

變化..

var imgPath = Titanium.Filesystem.getFile(Titanium.Filesystem.externalStorageDirectory + '/Resize/'); 

剩餘的所有相同的代碼..

var imgDir = Titanium.Filesystem.getFile(imgPath); 
if (!imgDir.exists()){ 
imgDir.createDirectory(); 
} 

var f = Titanium.Filesystem.getFile(imgPath, filename); 
f.write(image); 

Titanium.Media.Android.scanMediaFiles([f.nativePath], ["image/jpeg"]);