| Index: content/browser/android/download_controller_android_impl.cc
|
| diff --git a/content/browser/android/download_controller_android_impl.cc b/content/browser/android/download_controller_android_impl.cc
|
| index 874e47a361e1c8d3902820bf84da03321c1a2557..68a457f8fd3840f3c79ced31ece89bf97b00260e 100644
|
| --- a/content/browser/android/download_controller_android_impl.cc
|
| +++ b/content/browser/android/download_controller_android_impl.cc
|
| @@ -13,6 +13,7 @@
|
| #include "base/bind.h"
|
| #include "base/lazy_instance.h"
|
| #include "base/logging.h"
|
| +#include "base/metrics/histogram_macros.h"
|
| #include "base/synchronization/lock.h"
|
| #include "base/time/time.h"
|
| #include "content/browser/android/content_view_core_impl.h"
|
| @@ -132,6 +133,10 @@ static void OnRequestFileAccessResult(JNIEnv* env,
|
| cb(reinterpret_cast<
|
| DownloadControllerAndroid::AcquireFileAccessPermissionCallback*>(
|
| callback_id));
|
| + if (!granted) {
|
| + DownloadControllerAndroid::RecordDownloadCancelReason(
|
| + DownloadControllerAndroid::CANCEL_REASON_NO_STORAGE_PERMISSION);
|
| + }
|
| cb->Run(granted);
|
| }
|
|
|
| @@ -163,6 +168,13 @@ void DownloadControllerAndroid::SetDownloadControllerAndroid(
|
| }
|
|
|
| // static
|
| +void DownloadControllerAndroid::RecordDownloadCancelReason(
|
| + DownloadCancelReason reason) {
|
| + UMA_HISTOGRAM_ENUMERATION(
|
| + "MobileDownload.CancelReason", reason, CANCEL_REASON_MAX);
|
| +}
|
| +
|
| +// static
|
| DownloadControllerAndroidImpl* DownloadControllerAndroidImpl::GetInstance() {
|
| return base::Singleton<DownloadControllerAndroidImpl>::get();
|
| }
|
| @@ -495,6 +507,8 @@ void DownloadControllerAndroidImpl::OnDownloadUpdated(DownloadItem* item) {
|
| jmime_type.obj(), jfilename.obj(), jpath.obj(),
|
| item->GetReceivedBytes(), jguid.obj(),
|
| joriginal_url.obj(), jreferrer_url.obj(), item->HasUserGesture());
|
| + DownloadControllerAndroid::RecordDownloadCancelReason(
|
| + DownloadControllerAndroid::CANCEL_REASON_NOT_CANCELED);
|
| break;
|
| case DownloadItem::CANCELLED:
|
| Java_DownloadController_onDownloadCancelled(
|
|
|