ifneq (,$(strip $(my_full_libs_manifest_files))) # Set up rules to merge library manifest files
fixed_android_manifest := $(intermediates.COMMON)/manifest/AndroidManifest.xml.fixed
ifeq ($(LOCAL_MODULE_CLASS),APPS) ifeq (true,$(call math_gt_or_eq,$(patsubst $(PLATFORM_VERSION_CODENAME),100,$(call module-min-sdk-version)),23)) ifeq (true,$(LOCAL_USE_EMBEDDED_NATIVE_LIBS))
my_manifest_fixer_flags += --extract-native-libs=false else
my_manifest_fixer_flags += --extract-native-libs=true endif elseifeq (true,$(LOCAL_USE_EMBEDDED_NATIVE_LIBS))
$(call pretty-error,LOCAL_USE_EMBEDDED_NATIVE_LIBS is set but minSdkVersion $(call module-min-sdk-version) does not support it) endif endif
# TODO: Replace this hardcoded list of optional uses-libraries with build logic # that propagates optionality via the generated exported-sdk-libs files. # Hardcodng doesn't scale and enforces a single choice on each library, while in # reality this is a choice of the library users (which may differ).
my_optional_sdk_lib_names := \
android.test.base \
android.test.mock \
androidx.window.extensions \
androidx.window.sidecar
$(fixed_android_manifest): PRIVATE_MANIFEST_FIXER_FLAGS := $(my_manifest_fixer_flags) # These two libs are added as optional dependencies (<uses-library> with # android:required set to false). This is because they haven't existed in pre-P # devices, but classes in them were in bootclasspath jars, etc. So making them # hard dependencies (andriod:required=true) would prevent apps from being # installed to such legacy devices.
$(fixed_android_manifest): PRIVATE_OPTIONAL_SDK_LIB_NAMES := $(my_optional_sdk_lib_names)
$(fixed_android_manifest): $(MANIFEST_FIXER)
$(fixed_android_manifest): $(main_android_manifest) echo $(PRIVATE_OPTIONAL_SDK_LIB_NAMES) | tr ' ''\n' > $(PRIVATE_EXPORTED_SDK_LIBS_FILE).optional
@echo"Fix manifest: $@"
$(MANIFEST_FIXER) \
--minSdkVersion $(PRIVATE_MIN_SDK_VERSION) \
--targetSdkVersion $(PRIVATE_TARGET_SDK_VERSION) \
--raise-min-sdk-version \
$(PRIVATE_MANIFEST_FIXER_FLAGS) \
$(if (PRIVATE_EXPORTED_SDK_LIBS_FILE),\
$$(cat $(PRIVATE_EXPORTED_SDK_LIBS_FILE) | grep -v -f $(PRIVATE_EXPORTED_SDK_LIBS_FILE).optional | sort -u | sed -e 's/^/\ --uses-library\ /' | tr '\n'' ') \
$$(cat $(PRIVATE_EXPORTED_SDK_LIBS_FILE) | grep -f $(PRIVATE_EXPORTED_SDK_LIBS_FILE).optional | sort -u | sed -e 's/^/\ --optional-uses-library\ /' | tr '\n'' ') \
) \
$< $@ rm $(PRIVATE_EXPORTED_SDK_LIBS_FILE).optional
my_optional_sdk_lib_names :=
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.14 Sekunden
(vorverarbeitet am 2026-06-28)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.