diff --git a/core/jni/android_util_AssetManager.cpp b/core/jni/android_util_AssetManager.cpp index 8c23b214b8fe0..764338faef643 100644 --- a/core/jni/android_util_AssetManager.cpp +++ b/core/jni/android_util_AssetManager.cpp @@ -39,6 +39,7 @@ #include "androidfw/AssetManager2.h" #include "androidfw/AttributeResolution.h" #include "androidfw/MutexGuard.h" +#include #include "androidfw/ResourceTypes.h" #include "androidfw/ResourceUtils.h" @@ -630,6 +631,7 @@ static jint NativeGetResourceValue(JNIEnv* env, jclass /*clazz*/, jlong ptr, jin jshort density, jobject typed_value, jboolean resolve_references) { ScopedLock assetmanager(AssetManagerFromLong(ptr)); + ResourceTimer _tag(ResourceTimer::Counter::GetResourceValue); auto value = assetmanager->GetResource(static_cast(resid), false /*may_be_bag*/, static_cast(density)); if (!value.has_value()) { @@ -1232,6 +1234,7 @@ static jboolean NativeRetrieveAttributes(JNIEnv* env, jclass /*clazz*/, jlong pt } ScopedLock assetmanager(AssetManagerFromLong(ptr)); + ResourceTimer _tag(ResourceTimer::Counter::RetrieveAttributes); ResXMLParser* xml_parser = reinterpret_cast(xml_parser_ptr); auto result = RetrieveAttributes(assetmanager.get(), xml_parser, reinterpret_cast(attrs), diff --git a/services/core/java/com/android/server/resources/ResourcesManagerService.java b/services/core/java/com/android/server/resources/ResourcesManagerService.java index cc275466a5ff7..eec3a0259a3e3 100644 --- a/services/core/java/com/android/server/resources/ResourcesManagerService.java +++ b/services/core/java/com/android/server/resources/ResourcesManagerService.java @@ -20,6 +20,7 @@ import android.annotation.NonNull; import android.annotation.Nullable; import android.content.Context; import android.content.res.IResourcesManager; +import android.content.res.ResourceTimer; import android.os.Binder; import android.os.IBinder; import android.os.ParcelFileDescriptor; @@ -55,7 +56,7 @@ public class ResourcesManagerService extends SystemService { @Override public void onStart() { - // Intentionally left empty. + ResourceTimer.start(); } private final IBinder mService = new IResourcesManager.Stub() {