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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/webshare/ShareServiceImpl.java

Issue 2228403002: Add detailed histograms for navigator.share. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@webshare-usecounter
Patch Set: Update comment for enum constants. Created 4 years, 3 months 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | tools/metrics/histograms/histograms.xml » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/android/java/src/org/chromium/chrome/browser/webshare/ShareServiceImpl.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/webshare/ShareServiceImpl.java b/chrome/android/java/src/org/chromium/chrome/browser/webshare/ShareServiceImpl.java
index df32f4f7592f4a3ba421fcab731ab7044ef528fe..f49b85010197454f3967602b4b0e39ad6b629b2c 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/webshare/ShareServiceImpl.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/webshare/ShareServiceImpl.java
@@ -8,6 +8,7 @@ import android.app.Activity;
import android.content.ComponentName;
import android.support.annotation.Nullable;
+import org.chromium.base.metrics.RecordHistogram;
import org.chromium.chrome.browser.share.ShareHelper;
import org.chromium.content.browser.ContentViewCore;
import org.chromium.content_public.browser.WebContents;
@@ -23,6 +24,20 @@ import org.chromium.ui.base.WindowAndroid;
public class ShareServiceImpl implements ShareService {
private final Activity mActivity;
+ // These numbers are written to histograms. Keep in sync with WebShareMethod enum in
+ // histograms.xml, and don't reuse or renumber entries (except for the _COUNT entry).
+ private static final int WEBSHARE_METHOD_SHARE = 0;
+ // Count is technically 1, but recordEnumeratedHistogram requires a boundary of at least 2
+ // (https://crbug.com/645032).
+ private static final int WEBSHARE_METHOD_COUNT = 2;
+
+ // These numbers are written to histograms. Keep in sync with WebShareOutcome enum in
+ // histograms.xml, and don't reuse or renumber entries (except for the _COUNT entry).
+ private static final int WEBSHARE_OUTCOME_SUCCESS = 0;
+ private static final int WEBSHARE_OUTCOME_UNKNOWN_FAILURE = 1;
+ private static final int WEBSHARE_OUTCOME_CANCELED = 2;
+ private static final int WEBSHARE_OUTCOME_COUNT = 3;
+
public ShareServiceImpl(@Nullable WebContents webContents) {
mActivity = activityFromWebContents(webContents);
}
@@ -35,17 +50,26 @@ public class ShareServiceImpl implements ShareService {
@Override
public void share(String title, String text, Url url, final ShareResponse callback) {
+ RecordHistogram.recordEnumeratedHistogram("WebShare.ApiCount", WEBSHARE_METHOD_SHARE,
+ WEBSHARE_METHOD_COUNT);
+
if (mActivity == null) {
+ RecordHistogram.recordEnumeratedHistogram("WebShare.ShareOutcome",
+ WEBSHARE_OUTCOME_UNKNOWN_FAILURE, WEBSHARE_OUTCOME_COUNT);
callback.call("Share failed");
return;
}
ShareHelper.TargetChosenCallback innerCallback = new ShareHelper.TargetChosenCallback() {
public void onTargetChosen(ComponentName chosenComponent) {
+ RecordHistogram.recordEnumeratedHistogram("WebShare.ShareOutcome",
+ WEBSHARE_OUTCOME_SUCCESS, WEBSHARE_OUTCOME_COUNT);
callback.call(null);
}
public void onCancel() {
+ RecordHistogram.recordEnumeratedHistogram("WebShare.ShareOutcome",
+ WEBSHARE_OUTCOME_CANCELED, WEBSHARE_OUTCOME_COUNT);
callback.call("Share canceled");
}
};
« no previous file with comments | « no previous file | tools/metrics/histograms/histograms.xml » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698