Loading apct-tests/perftests/core/src/android/graphics/perftests/TypefaceCreatePerfTest.java +14 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ package android.graphics.perftests; import android.content.Context; import android.content.res.AssetManager; import android.content.res.Resources; import android.graphics.Typeface; import android.perftests.utils.BenchmarkState; import android.perftests.utils.PerfStatusReporter; Loading @@ -26,6 +27,8 @@ import androidx.test.InstrumentationRegistry; import androidx.test.filters.LargeTest; import androidx.test.runner.AndroidJUnit4; import com.android.perftests.core.R; import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; Loading Loading @@ -104,4 +107,15 @@ public class TypefaceCreatePerfTest { outFile.delete(); } @Test public void testCreate_fromResources() { BenchmarkState state = mPerfStatusReporter.getBenchmarkState(); final Resources r = InstrumentationRegistry.getContext().getResources(); while (state.keepRunning()) { Typeface face = r.getFont(R.font.samplefont); } } } graphics/java/android/graphics/Typeface.java +2 −2 Original line number Diff line number Diff line Loading @@ -596,8 +596,8 @@ public class Typeface { final Font font = mFontBuilder.build(); final String key = mAssetManager == null ? null : createAssetUid( mAssetManager, mPath, font.getTtcIndex(), font.getAxes(), font.getStyle().getWeight(), font.getStyle().getSlant(), mFallbackFamilyName); mWeight, mItalic, mFallbackFamilyName == null ? DEFAULT_FAMILY : mFallbackFamilyName); if (key != null) { // Dynamic cache lookup is only for assets. synchronized (sDynamicCacheLock) { Loading Loading
apct-tests/perftests/core/src/android/graphics/perftests/TypefaceCreatePerfTest.java +14 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ package android.graphics.perftests; import android.content.Context; import android.content.res.AssetManager; import android.content.res.Resources; import android.graphics.Typeface; import android.perftests.utils.BenchmarkState; import android.perftests.utils.PerfStatusReporter; Loading @@ -26,6 +27,8 @@ import androidx.test.InstrumentationRegistry; import androidx.test.filters.LargeTest; import androidx.test.runner.AndroidJUnit4; import com.android.perftests.core.R; import org.junit.Rule; import org.junit.Test; import org.junit.runner.RunWith; Loading Loading @@ -104,4 +107,15 @@ public class TypefaceCreatePerfTest { outFile.delete(); } @Test public void testCreate_fromResources() { BenchmarkState state = mPerfStatusReporter.getBenchmarkState(); final Resources r = InstrumentationRegistry.getContext().getResources(); while (state.keepRunning()) { Typeface face = r.getFont(R.font.samplefont); } } }
graphics/java/android/graphics/Typeface.java +2 −2 Original line number Diff line number Diff line Loading @@ -596,8 +596,8 @@ public class Typeface { final Font font = mFontBuilder.build(); final String key = mAssetManager == null ? null : createAssetUid( mAssetManager, mPath, font.getTtcIndex(), font.getAxes(), font.getStyle().getWeight(), font.getStyle().getSlant(), mFallbackFamilyName); mWeight, mItalic, mFallbackFamilyName == null ? DEFAULT_FAMILY : mFallbackFamilyName); if (key != null) { // Dynamic cache lookup is only for assets. synchronized (sDynamicCacheLock) { Loading