2014-01-23 93 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"]);