From b8fb0de02faf8f29a1c1b1f61454c743c9a6603c Mon Sep 17 00:00:00 2001 From: Ralph Nathan Date: Mon, 13 Aug 2018 14:35:03 -0700 Subject: [PATCH] Allow products to define their own hidden api stubs This enables other verticals/products to expand the list of APIs that apps can call on those devices. Bug: 112190341 Test: local test with app Merged-In: I4dc983273a1beb83d0b81ab026945880a10bbd8c Change-Id: I4dc983273a1beb83d0b81ab026945880a10bbd8c (cherry picked from commit f9bf755d0a7d4e77061995b045ad5ef42b3ebd78) --- core/dex_preopt.mk | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/core/dex_preopt.mk b/core/dex_preopt.mk index 6c0a4b4fe9..a7caac1ea5 100644 --- a/core/dex_preopt.mk +++ b/core/dex_preopt.mk @@ -107,6 +107,19 @@ HIDDENAPI_STUBS_SYSTEM := \ HIDDENAPI_STUBS_TEST := \ $(call hiddenapi_stubs_jar,android_test_stubs_current) +# Allow products to define their own stubs for custom product jars that apps can use. +ifdef PRODUCT_HIDDENAPI_STUBS + HIDDENAPI_STUBS += $(foreach stub,$(PRODUCT_HIDDENAPI_STUBS), $(call hiddenapi_stubs_jar,$(stub))) +endif + +ifdef PRODUCT_HIDDENAPI_STUBS_SYSTEM + HIDDENAPI_STUBS_SYSTEM += $(foreach stub,$(PRODUCT_HIDDENAPI_STUBS_SYSTEM), $(call hiddenapi_stubs_jar,$(stub))) +endif + +ifdef PRODUCT_HIDDENAPI_STUBS_TEST + HIDDENAPI_STUBS_TEST += $(foreach stub,$(PRODUCT_HIDDENAPI_STUBS_TEST), $(call hiddenapi_stubs_jar,$(stub))) +endif + # Singleton rule which applies $(HIDDENAPI) on all boot class path dex files. # Inputs are filled with `hiddenapi-copy-dex-files` rules. $(INTERNAL_PLATFORM_HIDDENAPI_PRIVATE_LIST): PRIVATE_HIDDENAPI_STUBS := $(HIDDENAPI_STUBS)