gpt4 book ai didi

android - 在 Android 中使用下载管理器下载失败的占位符原因

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:43:38 26 4
gpt4 key购买 nike

我正在使用下载管理器下载各种类型的文件(.mov、.pdf、.png)。当我调用下载管理器时,下载失败给出占位符的原因。 place holder 是什么意思,我该如何解决这个问题?请帮忙!

我的代码如下:

DownloadManager.Request request = new DownloadManager.Request(Uri.parse(downloadUrlFile))
.setDestinationInExternalFilesDir(context,
(Environment.DIRECTORY_DOWNLOADS), downloadFileName).setNotificationVisibility(visibility);

mEnqueue = downloadManager.enqueue(request);
mDownloadReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
Log.d(TAG, "DOWNLOAD_STATUS"+intent.getAction());
String action = intent.getAction();
if (DownloadManager.ACTION_DOWNLOAD_COMPLETE.equals(action)) {
Query query = new Query();
query.setFilterById(mEnqueue);
Cursor c = downloadManager.query(query);
if (c.moveToFirst()) {
int columnIndex = c .getColumnIndex(DownloadManager.COLUMN_STATUS);
Log.d("getColumnIndex()", "Reason: " + c
.getColumnIndex(DownloadManager.COLUMN_STATUS)+DownloadManager.STATUS_SUCCESSFUL);
if (DownloadManager.STATUS_SUCCESSFUL == c.getInt(columnIndex)) {
Log.d(TAG, "DOWNLOAD_STATUS_SUCCESSFUL");
} else if (DownloadManager.STATUS_FAILED == c.getInt(columnIndex)) {
Log.d("handleData()", "Reason: " + c.getString(c.getColumnIndex(DownloadManager.COLUMN_REASON)));
Log.d(TAG, "DOWNLOAD_STATUS_FAILED");
}
}
}
}
};

最佳答案

问题是列“COLUMN_REASON”是一个整数而不是一个字符串(尽管我看到的一些例子暗示它是一个字符串)。

因此你应该使用:

Log.d("handleData()", "Reason: " + c.getInt(c.getColumnIndex(DownloadManager.COLUMN_REASON)));

可以找到值: Herehere

关于android - 在 Android 中使用下载管理器下载失败的占位符原因,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31541262/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com