diff options
author | Anton Hansson <hansson@google.com> | 2013-09-26 12:18:32 +0100 |
---|---|---|
committer | Anton Hansson <hansson@google.com> | 2013-09-26 12:18:32 +0100 |
commit | a2f665f4f7dc60aa0ea97e20027a79e796241356 (patch) | |
tree | 5c06e60e9815d24a1c14ae3726ff304a50765d8f /src/com/android/launcher3/Stats.java | |
parent | 4082c8c7d7a881341fed5e21ee9f22efe1f8b132 (diff) | |
download | android_packages_apps_Trebuchet-a2f665f4f7dc60aa0ea97e20027a79e796241356.tar.gz android_packages_apps_Trebuchet-a2f665f4f7dc60aa0ea97e20027a79e796241356.tar.bz2 android_packages_apps_Trebuchet-a2f665f4f7dc60aa0ea97e20027a79e796241356.zip |
Broadcast app launches from all apps too.
Bug 10943415
Change-Id: I0e496a53fc253bd313d269a05674d7c5cdadee68
Diffstat (limited to 'src/com/android/launcher3/Stats.java')
-rw-r--r-- | src/com/android/launcher3/Stats.java | 35 |
1 files changed, 23 insertions, 12 deletions
diff --git a/src/com/android/launcher3/Stats.java b/src/com/android/launcher3/Stats.java index ca088f71a..882fb04a3 100644 --- a/src/com/android/launcher3/Stats.java +++ b/src/com/android/launcher3/Stats.java @@ -103,20 +103,24 @@ public class Stats { } } + public void recordLaunch(Intent intent) { + recordLaunch(intent, null); + } + public void recordLaunch(Intent intent, ShortcutInfo shortcut) { intent = new Intent(intent); intent.setSourceBounds(null); final String flat = intent.toUri(0); - mLauncher.sendBroadcast( - new Intent(ACTION_LAUNCH) - .putExtra(EXTRA_INTENT, flat) - .putExtra(EXTRA_CONTAINER, shortcut.container) - .putExtra(EXTRA_SCREEN, shortcut.screenId) - .putExtra(EXTRA_CELLX, shortcut.cellX) - .putExtra(EXTRA_CELLY, shortcut.cellY), - PERM_LAUNCH); + Intent broadcastIntent = new Intent(ACTION_LAUNCH).putExtra(EXTRA_INTENT, flat); + if (shortcut != null) { + broadcastIntent.putExtra(EXTRA_CONTAINER, shortcut.container) + .putExtra(EXTRA_SCREEN, shortcut.screenId) + .putExtra(EXTRA_CELLX, shortcut.cellX) + .putExtra(EXTRA_CELLY, shortcut.cellY); + } + mLauncher.sendBroadcast(broadcastIntent, PERM_LAUNCH); incrementLaunch(flat); @@ -128,10 +132,17 @@ public class Stats { try { mLog.writeInt(LOG_TAG_LAUNCH); mLog.writeLong(System.currentTimeMillis()); - mLog.writeShort((short) shortcut.container); - mLog.writeShort((short) shortcut.screenId); - mLog.writeShort((short) shortcut.cellX); - mLog.writeShort((short) shortcut.cellY); + if (shortcut == null) { + mLog.writeShort(0); + mLog.writeShort(0); + mLog.writeShort(0); + mLog.writeShort(0); + } else { + mLog.writeShort((short) shortcut.container); + mLog.writeShort((short) shortcut.screenId); + mLog.writeShort((short) shortcut.cellX); + mLog.writeShort((short) shortcut.cellY); + } mLog.writeUTF(flat); if (FLUSH_IMMEDIATELY) { mLog.flush(); // TODO: delayed writes |