Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(44)

Side by Side Diff: chrome/browser/permissions/permission_uma_util.cc

Issue 2463393003: Record permission prompt gesture metrics on Android. (Closed)
Patch Set: Address comments Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/permissions/permission_uma_util.h" 5 #include "chrome/browser/permissions/permission_uma_util.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/metrics/histogram_macros.h" 10 #include "base/metrics/histogram_macros.h"
(...skipping 353 matching lines...) Expand 10 before | Expand all | Expand 10 after
364 364
365 PermissionRequestType permission_prompt_type = 365 PermissionRequestType permission_prompt_type =
366 PermissionRequestType::MULTIPLE; 366 PermissionRequestType::MULTIPLE;
367 PermissionRequestGestureType permission_gesture_type = 367 PermissionRequestGestureType permission_gesture_type =
368 PermissionRequestGestureType::UNKNOWN; 368 PermissionRequestGestureType::UNKNOWN;
369 if (requests.size() == 1) { 369 if (requests.size() == 1) {
370 permission_prompt_type = requests[0]->GetPermissionRequestType(); 370 permission_prompt_type = requests[0]->GetPermissionRequestType();
371 permission_gesture_type = requests[0]->GetGestureType(); 371 permission_gesture_type = requests[0]->GetGestureType();
372 } 372 }
373 373
374 PERMISSION_BUBBLE_TYPE_UMA(kPermissionsPromptShown, permission_prompt_type); 374 RecordPermissionPromptShown(permission_prompt_type, permission_gesture_type);
375 PERMISSION_BUBBLE_GESTURE_TYPE_UMA(
376 kPermissionsPromptShownGesture, kPermissionsPromptShownNoGesture,
377 permission_gesture_type, permission_prompt_type);
378 375
379 UMA_HISTOGRAM_ENUMERATION( 376 UMA_HISTOGRAM_ENUMERATION(
380 kPermissionsPromptRequestsPerPrompt, 377 kPermissionsPromptRequestsPerPrompt,
381 static_cast<base::HistogramBase::Sample>(requests.size()), 378 static_cast<base::HistogramBase::Sample>(requests.size()),
382 static_cast<base::HistogramBase::Sample>(10)); 379 static_cast<base::HistogramBase::Sample>(10));
383 380
384 if (requests.size() > 1) { 381 if (requests.size() > 1) {
385 for (const auto* request : requests) { 382 for (const auto* request : requests) {
386 PERMISSION_BUBBLE_TYPE_UMA(kPermissionsPromptMergedBubbleTypes, 383 PERMISSION_BUBBLE_TYPE_UMA(kPermissionsPromptMergedBubbleTypes,
387 request->GetPermissionRequestType()); 384 request->GetPermissionRequestType());
(...skipping 22 matching lines...) Expand all
410 request->GetPermissionRequestType()); 407 request->GetPermissionRequestType());
411 } else { 408 } else {
412 all_accepted = false; 409 all_accepted = false;
413 PERMISSION_BUBBLE_TYPE_UMA(kPermissionsPromptMergedBubbleDenied, 410 PERMISSION_BUBBLE_TYPE_UMA(kPermissionsPromptMergedBubbleDenied,
414 request->GetPermissionRequestType()); 411 request->GetPermissionRequestType());
415 } 412 }
416 } 413 }
417 } 414 }
418 415
419 if (all_accepted) { 416 if (all_accepted) {
420 PERMISSION_BUBBLE_TYPE_UMA(kPermissionsPromptAccepted, 417 RecordPermissionPromptAccepted(permission_prompt_type,
421 permission_prompt_type); 418 permission_gesture_type);
422 PERMISSION_BUBBLE_GESTURE_TYPE_UMA(
423 kPermissionsPromptAcceptedGesture, kPermissionsPromptAcceptedNoGesture,
424 permission_gesture_type, permission_prompt_type);
425 } else { 419 } else {
426 PERMISSION_BUBBLE_TYPE_UMA(kPermissionsPromptDenied, 420 RecordPermissionPromptDenied(permission_prompt_type,
427 permission_prompt_type); 421 permission_gesture_type);
428 PERMISSION_BUBBLE_GESTURE_TYPE_UMA(
429 kPermissionsPromptDeniedGesture, kPermissionsPromptDeniedNoGesture,
430 permission_gesture_type, permission_prompt_type);
431 } 422 }
432 } 423 }
433 424
434 void PermissionUmaUtil::PermissionPromptDenied( 425 void PermissionUmaUtil::PermissionPromptDenied(
435 const std::vector<PermissionRequest*>& requests) { 426 const std::vector<PermissionRequest*>& requests) {
436 DCHECK(!requests.empty()); 427 DCHECK(!requests.empty());
437 DCHECK(requests.size() == 1); 428 DCHECK(requests.size() == 1);
438 429
439 PERMISSION_BUBBLE_TYPE_UMA(kPermissionsPromptDenied, 430 RecordPermissionPromptDenied(requests[0]->GetPermissionRequestType(),
440 requests[0]->GetPermissionRequestType()); 431 requests[0]->GetGestureType());
432 }
433
434 void PermissionUmaUtil::RecordPermissionPromptShown(
435 PermissionRequestType request_type,
436 PermissionRequestGestureType gesture_type) {
437 PERMISSION_BUBBLE_TYPE_UMA(kPermissionsPromptShown, request_type);
441 PERMISSION_BUBBLE_GESTURE_TYPE_UMA( 438 PERMISSION_BUBBLE_GESTURE_TYPE_UMA(
442 kPermissionsPromptDeniedGesture, kPermissionsPromptDeniedNoGesture, 439 kPermissionsPromptShownGesture, kPermissionsPromptShownNoGesture,
443 requests[0]->GetGestureType(), requests[0]->GetPermissionRequestType()); 440 gesture_type, request_type);
441 }
442
443 void PermissionUmaUtil::RecordPermissionPromptAccepted(
444 PermissionRequestType request_type,
445 PermissionRequestGestureType gesture_type) {
446 PERMISSION_BUBBLE_TYPE_UMA(kPermissionsPromptAccepted, request_type);
447 PERMISSION_BUBBLE_GESTURE_TYPE_UMA(kPermissionsPromptAcceptedGesture,
448 kPermissionsPromptAcceptedNoGesture,
449 gesture_type, request_type);
450 }
451
452 void PermissionUmaUtil::RecordPermissionPromptDenied(
453 PermissionRequestType request_type,
454 PermissionRequestGestureType gesture_type) {
455 PERMISSION_BUBBLE_TYPE_UMA(kPermissionsPromptDenied, request_type);
456 PERMISSION_BUBBLE_GESTURE_TYPE_UMA(kPermissionsPromptDeniedGesture,
457 kPermissionsPromptDeniedNoGesture,
458 gesture_type, request_type);
444 } 459 }
445 460
446 void PermissionUmaUtil::RecordPermissionPromptPriorCount( 461 void PermissionUmaUtil::RecordPermissionPromptPriorCount(
447 content::PermissionType permission, 462 content::PermissionType permission,
448 const std::string& prefix, 463 const std::string& prefix,
449 int count) { 464 int count) {
450 // The user is not prompted for these permissions, thus there is no prompt 465 // The user is not prompted for these permissions, thus there is no prompt
451 // event to record a prior count for. 466 // event to record a prior count for.
452 DCHECK_NE(PermissionType::MIDI, permission); 467 DCHECK_NE(PermissionType::MIDI, permission);
453 DCHECK_NE(PermissionType::BACKGROUND_SYNC, permission); 468 DCHECK_NE(PermissionType::BACKGROUND_SYNC, permission);
(...skipping 246 matching lines...) Expand 10 before | Expand all | Expand 10 after
700 if (!deprecated_metric.empty() && rappor_service) { 715 if (!deprecated_metric.empty() && rappor_service) {
701 rappor::SampleDomainAndRegistryFromGURL(rappor_service, deprecated_metric, 716 rappor::SampleDomainAndRegistryFromGURL(rappor_service, deprecated_metric,
702 requesting_origin); 717 requesting_origin);
703 718
704 std::string rappor_metric = deprecated_metric + "2"; 719 std::string rappor_metric = deprecated_metric + "2";
705 rappor_service->RecordSample( 720 rappor_service->RecordSample(
706 rappor_metric, rappor::LOW_FREQUENCY_ETLD_PLUS_ONE_RAPPOR_TYPE, 721 rappor_metric, rappor::LOW_FREQUENCY_ETLD_PLUS_ONE_RAPPOR_TYPE,
707 rappor::GetDomainAndRegistrySampleFromGURL(requesting_origin)); 722 rappor::GetDomainAndRegistrySampleFromGURL(requesting_origin));
708 } 723 }
709 } 724 }
OLDNEW
« no previous file with comments | « chrome/browser/permissions/permission_uma_util.h ('k') | chrome/browser/permissions/permission_util.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698