Hide conscrypt package classes for app AOT compilation.

Since app AOT compilation is usually done without conscrypt
on the boot class path, classes defined by app class loader
in conscrypt packages could be resolved differently, i.e.
from conscrypt, at runtime. Reject such definitions during
AOT compilation to ensure correct runtime behavior.

Add a test that when compiling the conscrypt module as an
app, we cannot resolve any class defined in its dex files.

Test: module_exclusion_test
Bug: 122937705
Change-Id: I1fcb4c21937f59772206ee50b688a75053231bc0
10 files changed