From cab9854fa91b4721eef4d4a549f702f73b7edd8a Mon Sep 17 00:00:00 2001 From: Luke Huang Date: Tue, 18 Feb 2020 15:53:44 +0800 Subject: [PATCH] Use libbase to get the elapsed time instead of libutils To minimize the external library dependencies Bug: 149721367 Test: atest Change-Id: I7b79223ad58c2af94d01a35ad39be6cdd1de7f47 --- libstats/push_compat/Android.bp | 1 - libstats/push_compat/StatsEventCompat.cpp | 14 ++++++++++++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/libstats/push_compat/Android.bp b/libstats/push_compat/Android.bp index 3e695567a..4de95dc0d 100644 --- a/libstats/push_compat/Android.bp +++ b/libstats/push_compat/Android.bp @@ -36,7 +36,6 @@ cc_defaults { static_libs: [ "libbase", "liblog", - "libutils", ], } diff --git a/libstats/push_compat/StatsEventCompat.cpp b/libstats/push_compat/StatsEventCompat.cpp index de458b3e5..b065af21c 100644 --- a/libstats/push_compat/StatsEventCompat.cpp +++ b/libstats/push_compat/StatsEventCompat.cpp @@ -15,12 +15,16 @@ */ #include "include/StatsEventCompat.h" + +#include + +#include #include #include #include #include -#include +using android::base::boot_clock; using android::base::GetProperty; const static int kStatsEventTag = 1937006964; @@ -41,6 +45,12 @@ bool StatsEventCompat::mAttemptedLoad = false; void* StatsEventCompat::mStatsEventApi = nullptr; std::mutex StatsEventCompat::mLoadLock; +static int64_t elapsedRealtimeNano() { + return std::chrono::time_point_cast(boot_clock::now()) + .time_since_epoch() + .count(); +} + StatsEventCompat::StatsEventCompat() : mEventQ(kStatsEventTag) { // guard loading because StatsEventCompat might be called from multithreaded // environment @@ -61,7 +71,7 @@ StatsEventCompat::StatsEventCompat() : mEventQ(kStatsEventTag) { if (mStatsEventApi) { // mEventR = mStatsEventApi->obtain(); } else if (!mPlatformAtLeastR) { - mEventQ << android::elapsedRealtimeNano(); + mEventQ << elapsedRealtimeNano(); } }