2013-02-13 30 views
2

我正在爲我的DownloadManager構建備份,它將重新啓動失敗的下載。DownloadManager光標屬性COLUMN_LOCAL_FILENAME在下載失敗時爲空

我堅持vogella's構建我的下載管理器功能的示例。

if (c.moveToFirst()) { 
int columnIndex = c.getColumnIndex(DownloadManager.COLUMN_STATUS); 

... 

} else if (DownloadManager.STATUS_FAILED == c.getInt(columnIndex)) { 

     colIndex = c.getColumnIndex(DownloadManager.COLUMN_LOCAL_FILENAME); 
     String localFilename = c.getString(colIndex); 

} 

的 「失敗」 - 案例是工作,但我localFilename變量null

BTW:COLUMN_URI正在工作。

任何想法如何我可以訪問目標/本地路徑或文件名?

回答

5

DownloadManager.COLUMN_LOCAL_FILENAME字段自API 11起工作,所以如果您使用的是舊API,colIndex將爲-1,這將導致localFilename字符串爲空。

如果你想從URI獲得路徑只是

String path = Uri.parse(cursor.getString(cursor.getColumnIndex(DownloadManager.COLUMN_LOCAL_URI))).getPath() 
相關問題