package com.yeshi.base.utils.downutil; import android.content.Context; import android.database.Cursor; import com.mozillaonline.providers.DownloadManager; import com.yeshi.base.entity.db.DownloadTable; public class DownloadUtils { public static String getOfflinePath(Context context, String videoId, String videoDetailId) { String offlinePath = null; Cursor downloadCursor = context.getContentResolver().query( DownloadTable.CONTENT_URI, null, DownloadTable.VIDEO_ID + " = ? AND " + DownloadTable.VIDEO_DETAIL_ID + " = ? ", new String[] { videoId, videoDetailId }, null); if (downloadCursor.moveToFirst()) { DownloadManager downloadManager = new DownloadManager( context.getContentResolver(), context.getPackageName()); downloadManager.setAccessAllDownloads(true); DownloadManager.Query baseQuery = new DownloadManager.Query() .setOnlyIncludeVisibleInDownloadsUi(true); baseQuery.setFilterById(downloadCursor.getLong(downloadCursor .getColumnIndex(DownloadTable.TASK_ID))); Cursor c = downloadManager.query(baseQuery); if (c.moveToFirst()) { int status = c.getInt(c .getColumnIndexOrThrow(DownloadManager.COLUMN_STATUS)); if (status == DownloadManager.STATUS_SUCCESSFUL) { offlinePath = c .getString(c .getColumnIndexOrThrow(DownloadManager.COLUMN_LOCAL_URI)); } } c.close(); } downloadCursor.close(); return offlinePath; } public static boolean isOffline(Context context, String videoId, String videoDetailId) { Cursor downloadCursor = context.getContentResolver().query( DownloadTable.CONTENT_URI, null, DownloadTable.VIDEO_ID + " = ? AND " + DownloadTable.VIDEO_DETAIL_ID + " = ? ", new String[] { videoId, videoDetailId }, null); if (downloadCursor.moveToFirst()) { return true; } downloadCursor.close(); return false; } public static String getSaveDir(Context context) { return null; } }